(t *testing.T)
| 256 | } |
| 257 | |
| 258 | func TestUpdateLastUsed_DatabaseError(t *testing.T) { |
| 259 | db, mock, err := sqlmock.New() |
| 260 | assert.NoError(t, err) |
| 261 | defer func() { _ = db.Close() }() |
| 262 | |
| 263 | ds := Datasource{Conn: db} |
| 264 | |
| 265 | apiKeyID := "api_key_123" |
| 266 | |
| 267 | mock.ExpectExec("UPDATE ledgerforge.api_keys SET last_used_at = \\$1 WHERE api_key_id = \\$2"). |
| 268 | WithArgs(sqlmock.AnyArg(), apiKeyID). |
| 269 | WillReturnError(sql.ErrConnDone) |
| 270 | |
| 271 | err = ds.UpdateLastUsed(context.Background(), apiKeyID) |
| 272 | assert.Error(t, err) |
| 273 | assert.Equal(t, sql.ErrConnDone, err) |
| 274 | |
| 275 | err = mock.ExpectationsWereMet() |
| 276 | assert.NoError(t, err) |
| 277 | } |
| 278 | |
| 279 | func TestListAPIKeys_Success(t *testing.T) { |
| 280 | db, mock, err := sqlmock.New() |
nothing calls this directly
no test coverage detected