(t *testing.T)
| 313 | } |
| 314 | |
| 315 | func TestTokenizeIdentityField_AlreadyTokenized(t *testing.T) { |
| 316 | datasource, mock, err := newTestDataSource() |
| 317 | if err != nil { |
| 318 | t.Fatalf("Error creating test data source: %s", err) |
| 319 | } |
| 320 | |
| 321 | d, err := NewLedgerForge(datasource) |
| 322 | if err != nil { |
| 323 | t.Fatalf("Error creating LedgerForge instance: %s", err) |
| 324 | } |
| 325 | |
| 326 | testID := "idt_123" |
| 327 | |
| 328 | mock.ExpectBegin() |
| 329 | row := sqlmock.NewRows([]string{ |
| 330 | "identity_id", "identity_type", "first_name", "last_name", "other_names", "gender", "dob", |
| 331 | "email_address", "phone_number", "nationality", "organization_name", "category", |
| 332 | "street", "country", "state", "post_code", "city", "created_at", "meta_data", |
| 333 | }).AddRow( |
| 334 | testID, "Individual", "John", "Doe", "Other", "Male", time.Now(), |
| 335 | "john@example.com", "1234567890", "US", "Org", "Cat", |
| 336 | "Street", "Country", "State", "12345", "City", time.Now(), `{"tokenized_fields":{"EmailAddress":true}}`, |
| 337 | ) |
| 338 | mock.ExpectQuery("SELECT .* FROM ledgerforge.identity WHERE identity_id ="). |
| 339 | WithArgs(testID). |
| 340 | WillReturnRows(row) |
| 341 | mock.ExpectCommit() |
| 342 | |
| 343 | err = d.TokenizeIdentityField(testID, "EmailAddress") |
| 344 | assert.Error(t, err) |
| 345 | assert.Contains(t, err.Error(), "already tokenized") |
| 346 | } |
| 347 | |
| 348 | func TestTokenizeIdentity_Success(t *testing.T) { |
| 349 | datasource, mock, err := newTestDataSource() |
nothing calls this directly
no test coverage detected