2021-11-10 11:24:44 +01:00
|
|
|
import { IUserSplashStore } from 'lib/types/stores/user-splash-store';
|
|
|
|
import { IUserStore } from 'lib/types/stores/user-store';
|
|
|
|
import dbInit from '../helpers/database-init';
|
|
|
|
import getLogger from '../../fixtures/no-logger';
|
|
|
|
|
|
|
|
let stores;
|
|
|
|
let db;
|
|
|
|
let userSplashStore: IUserSplashStore;
|
|
|
|
let userStore: IUserStore;
|
|
|
|
let currentUser;
|
|
|
|
|
|
|
|
beforeAll(async () => {
|
|
|
|
db = await dbInit('user_splash_store', getLogger);
|
|
|
|
stores = db.stores;
|
|
|
|
userSplashStore = stores.userSplashStore;
|
|
|
|
userStore = stores.userStore;
|
|
|
|
currentUser = await userStore.upsert({ email: 'me.feedback@mail.com' });
|
|
|
|
});
|
|
|
|
|
|
|
|
afterAll(async () => {
|
|
|
|
await db.destroy();
|
|
|
|
});
|
|
|
|
|
|
|
|
afterEach(async () => {
|
|
|
|
await userSplashStore.deleteAll();
|
|
|
|
});
|
|
|
|
|
|
|
|
test('should create userSplash', async () => {
|
|
|
|
await userSplashStore.updateSplash({
|
|
|
|
splashId: 'some-id',
|
|
|
|
userId: currentUser.id,
|
|
|
|
seen: false,
|
|
|
|
});
|
2022-06-22 14:55:43 +02:00
|
|
|
const userSplashs = await userSplashStore.getAllUserSplashes(
|
|
|
|
currentUser.id,
|
|
|
|
);
|
2021-11-10 11:24:44 +01:00
|
|
|
expect(userSplashs).toHaveLength(1);
|
|
|
|
expect(userSplashs[0].splashId).toBe('some-id');
|
|
|
|
});
|
|
|
|
|
|
|
|
test('should get userSplash', async () => {
|
|
|
|
await userSplashStore.updateSplash({
|
|
|
|
splashId: 'some-id',
|
|
|
|
userId: currentUser.id,
|
|
|
|
seen: false,
|
|
|
|
});
|
|
|
|
const userSplash = await userSplashStore.getSplash(
|
|
|
|
currentUser.id,
|
|
|
|
'some-id',
|
|
|
|
);
|
|
|
|
expect(userSplash.splashId).toBe('some-id');
|
|
|
|
});
|
|
|
|
|
|
|
|
test('should exists', async () => {
|
|
|
|
await userSplashStore.updateSplash({
|
|
|
|
splashId: 'some-id-3',
|
|
|
|
userId: currentUser.id,
|
|
|
|
seen: false,
|
|
|
|
});
|
|
|
|
const exists = await userSplashStore.exists({
|
|
|
|
userId: currentUser.id,
|
|
|
|
splashId: 'some-id-3',
|
|
|
|
});
|
|
|
|
expect(exists).toBe(true);
|
|
|
|
});
|
|
|
|
|
|
|
|
test('should not exists', async () => {
|
|
|
|
const exists = await userSplashStore.exists({
|
|
|
|
userId: currentUser.id,
|
|
|
|
splashId: 'some-id-not-here',
|
|
|
|
});
|
|
|
|
expect(exists).toBe(false);
|
|
|
|
});
|
|
|
|
|
|
|
|
test('should get all userSplashs', async () => {
|
|
|
|
await userSplashStore.updateSplash({
|
|
|
|
splashId: 'some-id-2',
|
|
|
|
userId: currentUser.id,
|
|
|
|
seen: false,
|
|
|
|
});
|
|
|
|
const userSplashs = await userSplashStore.getAll();
|
|
|
|
expect(userSplashs).toHaveLength(1);
|
|
|
|
expect(userSplashs[0].splashId).toBe('some-id-2');
|
|
|
|
});
|