|
- package model
-
- import (
- "errors"
- "testing"
-
- "github.com/QuantumNous/new-api/common"
- "github.com/stretchr/testify/require"
- "gorm.io/gorm"
- )
-
- func TestRecordExistClassifiesSuccessNotFoundAndDatabaseError(t *testing.T) {
- exists, err := RecordExist(nil)
- require.True(t, exists)
- require.NoError(t, err)
-
- exists, err = RecordExist(gorm.ErrRecordNotFound)
- require.False(t, exists)
- require.NoError(t, err)
-
- dbErr := errors.New("database unavailable")
- exists, err = RecordExist(dbErr)
- require.False(t, exists)
- require.ErrorIs(t, err, dbErr)
- }
-
- func TestShouldUpdateRedisRequiresRedisDatabaseSourceAndNoError(t *testing.T) {
- oldRedisEnabled := common.RedisEnabled
- t.Cleanup(func() { common.RedisEnabled = oldRedisEnabled })
-
- common.RedisEnabled = false
- require.False(t, shouldUpdateRedis(true, nil))
-
- common.RedisEnabled = true
- require.False(t, shouldUpdateRedis(false, nil))
- require.False(t, shouldUpdateRedis(true, errors.New("query failed")))
- require.True(t, shouldUpdateRedis(true, nil))
- }
|