Skip to content

Commit

Permalink
Merge pull request #134 from xendit/test/add_test
Browse files Browse the repository at this point in the history
Test/add test
  • Loading branch information
stephenthajeb authored Nov 20, 2023
2 parents 5944e2d + 546d90f commit 88a8f4e
Show file tree
Hide file tree
Showing 12 changed files with 438 additions and 615 deletions.
5 changes: 4 additions & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@ module github.com/xendit/xendit-go/v3

go 1.18

require github.com/stretchr/testify v1.8.4
require (
github.com/joho/godotenv v1.5.1
github.com/stretchr/testify v1.8.4
)

require (
github.com/davecgh/go-spew v1.1.1 // indirect
Expand Down
2 changes: 2 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/joho/godotenv v1.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0=
github.com/joho/godotenv v1.5.1/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=
Expand Down
1 change: 1 addition & 0 deletions test/.env.api_test
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
IGNORED_ERRORCODE=INVALID_API_KEY,
42 changes: 0 additions & 42 deletions test/api_balance_test.go

This file was deleted.

76 changes: 0 additions & 76 deletions test/api_customer_test.go

This file was deleted.

81 changes: 36 additions & 45 deletions test/api_invoice_test.go
Original file line number Diff line number Diff line change
@@ -1,76 +1,67 @@
/*
xendit-invoice-service_test
Testing InvoiceApiService
*/

// Code generated by OpenAPI Generator

package xendit

import (
"context"
"fmt"
"log"
"os"
"testing"
"time"

"github.com/joho/godotenv"

"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"

xendit "github.com/xendit/xendit-go/v3"
"github.com/xendit/xendit-go/v3/invoice"
)

func Test_xendit_InvoiceApiService(t *testing.T) {
err := godotenv.Load(".env.api_test")
if err != nil {
log.Fatal("Error loading .env.api_test file")
}

apiKey := os.Getenv("XND_APIKEY")
apiKey := os.Getenv("DEVELOPMENT_API_KEY")
if apiKey == "" {
t.Skip("XND_APIKEY not set")
t.Skip("DEVELOPMENT_API_KEY not set")
}

apiClient := xendit.NewClient(apiKey)

t.Run("Test InvoiceApiService CreateInvoice", func(t *testing.T) {

resp, httpRes, err := apiClient.InvoiceApi.CreateInvoice(context.Background()).Execute()

require.Nil(t, err)
require.NotNil(t, resp)
assert.Equal(t, 200, httpRes.StatusCode)

createInvoiceRequest := *invoice.NewCreateInvoiceRequest(time.Now().Format("20060102150405"), float32(10000))
resp, httpRes, err := apiClient.InvoiceApi.
CreateInvoice(context.Background()).
CreateInvoiceRequest(createInvoiceRequest).
Execute()

if err != nil {
fmt.Fprintf(os.Stdout, "CreateInvoice Err`: %v\n", err)
} else {
fmt.Fprintf(os.Stdout, "CreateInvoice Res`: %v\n", resp)

require.NotNil(t, resp)
assert.Equal(t, 200, httpRes.StatusCode)
assert.Equal(t, invoice.InvoiceStatus("PENDING"), resp.Status)
}
})

t.Run("Test InvoiceApiService GetInvoiceById", func(t *testing.T) {

var invoiceId string
var invoiceId string = "654a103b5e6dfa587b6025c3"

resp, httpRes, err := apiClient.InvoiceApi.GetInvoiceById(context.Background(), invoiceId).Execute()

require.Nil(t, err)
require.NotNil(t, resp)
assert.Equal(t, 200, httpRes.StatusCode)
if err != nil {
fmt.Fprintf(os.Stdout, "GetInvoiceById Err`: %v\n", err)
} else {
fmt.Fprintf(os.Stdout, "GetInvoiceById Res`: %v\n", resp)

})

t.Run("Test InvoiceApiService GetInvoices", func(t *testing.T) {

resp, httpRes, err := apiClient.InvoiceApi.GetInvoices(context.Background()).Execute()

require.Nil(t, err)
require.NotNil(t, resp)
assert.Equal(t, 200, httpRes.StatusCode)

})

t.Run("Test InvoiceApiService ExpireInvoice", func(t *testing.T) {

var invoiceId string

resp, httpRes, err := apiClient.InvoiceApi.ExpireInvoice(context.Background(), invoiceId).Execute()

require.Nil(t, err)
require.NotNil(t, resp)
assert.Equal(t, 200, httpRes.StatusCode)
require.NotNil(t, resp)
assert.Equal(t, 200, httpRes.StatusCode)
}

})

}
Loading

0 comments on commit 88a8f4e

Please sign in to comment.