48 lines
1.0 KiB
Go
48 lines
1.0 KiB
Go
package setting
|
|
|
|
import (
|
|
"context"
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
"github.com/traggo/server/model"
|
|
"github.com/traggo/server/test"
|
|
"github.com/traggo/server/test/fake"
|
|
)
|
|
|
|
func TestGet_noUser(t *testing.T) {
|
|
db := test.InMemoryDB(t)
|
|
defer db.Close()
|
|
|
|
settings, err := Get(context.Background(), db.DB)
|
|
require.NoError(t, err)
|
|
require.Equal(t, model.ThemeGruvboxDark, settings.Theme)
|
|
}
|
|
|
|
func TestGet_user_noSettings(t *testing.T) {
|
|
db := test.InMemoryDB(t)
|
|
defer db.Close()
|
|
db.User(1)
|
|
|
|
settings, err := Get(fake.User(1), db.DB)
|
|
require.NoError(t, err)
|
|
require.Equal(t, model.ThemeGruvboxDark, settings.Theme)
|
|
}
|
|
|
|
func TestGet_user(t *testing.T) {
|
|
db := test.InMemoryDB(t)
|
|
defer db.Close()
|
|
db.User(1)
|
|
db.Save(&model.UserSetting{
|
|
UserID: 1,
|
|
Theme: model.ThemeGruvboxLight,
|
|
DateLocale: model.DateLocaleGerman,
|
|
FirstDayOfTheWeek: time.Sunday.String(),
|
|
})
|
|
|
|
settings, err := Get(fake.User(1), db.DB)
|
|
require.NoError(t, err)
|
|
require.Equal(t, model.ThemeGruvboxLight, settings.Theme)
|
|
}
|