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

Function TestGetBalanceAtTime_BalanceNotFound

database/balance_test.go:1795–1821  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

1793}
1794
1795func TestGetBalanceAtTime_BalanceNotFound(t *testing.T) {
1796 db, mock, err := sqlmock.New()
1797 assert.NoError(t, err)
1798 defer func() { _ = db.Close() }()
1799
1800 ds := Datasource{Conn: db}
1801 ctx := context.Background()
1802
1803 mock.ExpectBegin()
1804
1805 query := `SELECT currency, created_at FROM ledgerforge.balances WHERE balance_id = $1`
1806 mock.ExpectQuery(regexp.QuoteMeta(query)).
1807 WithArgs("bln_nonexistent").
1808 WillReturnError(sql.ErrNoRows)
1809
1810 mock.ExpectRollback()
1811
1812 balance, err := ds.GetBalanceAtTime(ctx, "bln_nonexistent", time.Now().Add(-1*time.Hour), false)
1813 assert.Error(t, err)
1814 assert.Nil(t, balance)
1815 apiErr, ok := err.(apierror.APIError)
1816 assert.True(t, ok)
1817 assert.Equal(t, apierror.ErrNotFound, apiErr.Code)
1818
1819 err = mock.ExpectationsWereMet()
1820 assert.NoError(t, err)
1821}
1822
1823func TestTakeBalanceSnapshots_Success(t *testing.T) {
1824 db, mock, err := sqlmock.New()

Callers

nothing calls this directly

Calls 3

GetBalanceAtTimeMethod · 0.95
CloseMethod · 0.45
ErrorMethod · 0.45

Tested by

no test coverage detected