Skip to content
This repository has been archived by the owner on Aug 26, 2022. It is now read-only.

Commit

Permalink
Merge pull request #95 from adamdecaf/customers-mysql-query-fix
Browse files Browse the repository at this point in the history
cmd/server: fix create customer query for mysql
  • Loading branch information
adamdecaf authored Jul 16, 2020
2 parents e8cd469 + 702d64a commit 4d43c90
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 2 deletions.
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
## v0.4.1 (Released 2020-07-16)

IMPROVEMENTS

- cmd/keygen: add script for generating high-quality gocloud.dev key URIs
- docs: clarify TRANSIT_LOCAL_BASE64_KEY is used for temporary encryption

BUG FIXES

- cmd/server: fix create customer query for mysql

## v0.4.0 (Released 2020-07-09)

ADDITIONS
Expand Down
4 changes: 2 additions & 2 deletions cmd/server/customers.go
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,7 @@ values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);`
}

// Insert customer phone numbers
query = `insert or replace into customers_phones (customer_id, number, valid, type) values (?, ?, ?, ?);`
query = `replace into customers_phones (customer_id, number, valid, type) values (?, ?, ?, ?);`
stmt, err = tx.Prepare(query)
if err != nil {
return fmt.Errorf("createCustomer: insert into customers_phones err=%v | rollback=%v", err, tx.Rollback())
Expand All @@ -351,7 +351,7 @@ values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);`
stmt.Close()

// Insert customer addresses
query = `insert or replace into customers_addresses(address_id, customer_id, type, address1, address2, city, state, postal_code, country, validated) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?);`
query = `replace into customers_addresses(address_id, customer_id, type, address1, address2, city, state, postal_code, country, validated) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?);`
stmt, err = tx.Prepare(query)
if err != nil {
return fmt.Errorf("createCustomer: insert into customers_addresses err=%v | rollback=%v", err, tx.Rollback())
Expand Down
23 changes: 23 additions & 0 deletions cmd/server/customers_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,29 @@ func TestCustomers__GetCustomer(t *testing.T) {
}
}

func TestCustomerRepository__createCustomer(t *testing.T) {
check := func(t *testing.T, repo *sqlCustomerRepository) {
cust, _, _ := (customerRequest{
FirstName: "Jane",
LastName: "Doe",
Email: "[email protected]",
}).asCustomer(testCustomerSSNStorage(t))
if err := repo.createCustomer(cust); err != nil {
t.Fatal(err)
}
}

// SQLite tests
sqliteDB := database.CreateTestSqliteDB(t)
defer sqliteDB.Close()
check(t, &sqlCustomerRepository{sqliteDB.DB, log.NewNopLogger()})

// MySQL tests
mysqlDB := database.CreateTestMySQLDB(t)
defer mysqlDB.Close()
check(t, &sqlCustomerRepository{mysqlDB.DB, log.NewNopLogger()})
}

func TestCustomers__GetCustomersError(t *testing.T) {
repo := &testCustomerRepository{err: errors.New("bad error")}

Expand Down

0 comments on commit 4d43c90

Please sign in to comment.