MCPcopy Create free account
hub / github.com/devaccuracy/ledgerforge / TestCreateIdentity

Function TestCreateIdentity

identity_test.go:32–76  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

30)
31
32func TestCreateIdentity(t *testing.T) {
33 datasource, mock, err := newTestDataSource()
34 if err != nil {
35 t.Fatalf("Error creating test data source: %s", err)
36 }
37
38 d, err := NewLedgerForge(datasource)
39 if err != nil {
40 t.Fatalf("Error creating LedgerForge instance: %s", err)
41 }
42
43 identity := model.Identity{
44 IdentityType: "individual",
45 OrganizationName: "",
46 Category: "",
47 FirstName: gofakeit.FirstName(),
48 LastName: gofakeit.LastName(),
49 OtherNames: gofakeit.LastName(),
50 Gender: gofakeit.Gender(),
51 DOB: gofakeit.Date(),
52 EmailAddress: gofakeit.Email(),
53 PhoneNumber: gofakeit.Phone(),
54 Nationality: gofakeit.Country(),
55 Street: gofakeit.Street(),
56 Country: gofakeit.Country(),
57 State: gofakeit.State(),
58 PostCode: "0000",
59 City: gofakeit.City(),
60 MetaData: nil,
61 }
62 metaDataJSON, _ := json.Marshal(identity.MetaData)
63
64 mock.ExpectExec("INSERT INTO ledgerforge.identity").
65 WithArgs(sqlmock.AnyArg(), identity.IdentityType, identity.FirstName, identity.LastName, identity.OtherNames, identity.Gender, identity.DOB, identity.EmailAddress, identity.PhoneNumber, identity.Nationality, identity.OrganizationName, identity.Category, identity.Street, identity.Country, identity.State, identity.PostCode, identity.City, sqlmock.AnyArg(), metaDataJSON).
66 WillReturnResult(sqlmock.NewResult(1, 1))
67
68 result, err := d.CreateIdentity(identity)
69 assert.NoError(t, err)
70 assert.NotEmpty(t, result.IdentityID)
71 assert.Equal(t, identity.FirstName, result.FirstName)
72
73 if err := mock.ExpectationsWereMet(); err != nil {
74 t.Errorf("there were unfulfilled expectations: %s", err)
75 }
76}
77
78func TestGetIdentity(t *testing.T) {
79 datasource, mock, err := newTestDataSource()

Callers

nothing calls this directly

Calls 3

CreateIdentityMethod · 0.95
newTestDataSourceFunction · 0.85
NewLedgerForgeFunction · 0.85

Tested by

no test coverage detected