Feat/appflowy tauri 2 (#1902)
* chore: rename classes to models
* refactor: add effects and reducers folder
* chore: update user data storage path
* chore: subscribe callback
* chore: nav items persist, board layout (#1879)
* chore: load workspace items, load folders and pages from workspace, load raw document data, load raw grid data
* chore: clear folders and pages before load, new folder event
* chore: update folder name backend call
* chore: folder expand animation
* chore: hide arrow on empty folder
* chore: Board page layout, board store, board sample data
* chore: board block item
* chore: test db id
* chore: persist new page, persist page rename, create workspace on read error
* chore: boardblockitem details btn
* chore: boardblockitem multiselect data and colors
* chore: board item drag
* chore: drag start on move
* chore: remove databaseId
* chore: remove databaseId
* chore: import service classes into auth hook
* chore: sign out option
* chore: login page event
* chore: signup event
* chore: make workspace hook to use service
* chore: page and folder hooks use backend services
* chore: new folder use backend service
* chore: error handler page
* chore: try catch hooks to show error page
* chore: install i18n package and use flutters i18n files
* fix: signin signup margin
* chore: fix compile errors
* chore: remove unused codes
* chore: open workspace after user register
* chore: open workspace after user register
* chore: add create grid demo
* chore: load the cell data
* chore: print the cell data
* chore: fix project errors
* fix: tauri UI issues (#1899)
* chore: load workspace items, load folders and pages from workspace, load raw document data, load raw grid data
* chore: clear folders and pages before load, new folder event
* chore: update folder name backend call
* chore: folder expand animation
* chore: hide arrow on empty folder
* chore: Board page layout, board store, board sample data
* chore: board block item
* chore: test db id
* chore: persist new page, persist page rename, create workspace on read error
* chore: boardblockitem details btn
* chore: boardblockitem multiselect data and colors
* chore: board item drag
* chore: drag start on move
* chore: remove databaseId
* chore: remove databaseId
* chore: import service classes into auth hook
* chore: sign out option
* chore: login page event
* chore: signup event
* chore: make workspace hook to use service
* chore: page and folder hooks use backend services
* chore: new folder use backend service
* chore: error handler page
* chore: try catch hooks to show error page
* chore: install i18n package and use flutters i18n files
* fix: signin signup margin
* fix: new page overflow with folder
* fix: sign out button
* fix: sign out icon
* chore: floating navigation panel
* refactor: notify with error
* chore: config window size
* fix: test demo error
* chore: update tests
---------
Co-authored-by: Askarbek Zadauly <ascarbek@gmail.com>
2023-02-28 14:42:41 +00:00
|
|
|
import { AuthBackendService, UserBackendService } from '../appflowy_app/stores/effects/user/user_bd_svc';
|
2023-02-19 06:59:04 +00:00
|
|
|
import { randomFillSync } from 'crypto';
|
|
|
|
import { nanoid } from '@reduxjs/toolkit';
|
|
|
|
|
|
|
|
beforeAll(() => {
|
|
|
|
//@ts-ignore
|
|
|
|
window.crypto = {
|
|
|
|
// @ts-ignore
|
|
|
|
getRandomValues: function (buffer) {
|
|
|
|
// @ts-ignore
|
|
|
|
return randomFillSync(buffer);
|
|
|
|
},
|
|
|
|
};
|
|
|
|
});
|
|
|
|
|
|
|
|
describe('User backend service', () => {
|
|
|
|
it('sign up', async () => {
|
|
|
|
const service = new AuthBackendService();
|
|
|
|
const result = await service.autoSignUp();
|
|
|
|
expect(result.ok).toBeTruthy;
|
|
|
|
});
|
|
|
|
|
|
|
|
it('sign in', async () => {
|
|
|
|
const authService = new AuthBackendService();
|
|
|
|
const email = nanoid(4) + '@appflowy.io';
|
|
|
|
const password = nanoid(10);
|
|
|
|
const signUpResult = await authService.signUp({ name: 'nathan', email: email, password: password });
|
|
|
|
expect(signUpResult.ok).toBeTruthy;
|
|
|
|
|
|
|
|
const signInResult = await authService.signIn({ email: email, password: password });
|
|
|
|
expect(signInResult.ok).toBeTruthy;
|
|
|
|
});
|
|
|
|
|
|
|
|
it('get user profile', async () => {
|
|
|
|
const service = new AuthBackendService();
|
|
|
|
const result = await service.autoSignUp();
|
|
|
|
const userProfile = result.unwrap();
|
|
|
|
|
|
|
|
const userService = new UserBackendService(userProfile.id);
|
|
|
|
expect((await userService.getUserProfile()).unwrap()).toBe(userProfile);
|
|
|
|
});
|
|
|
|
});
|