mattermost-mobile/app/database/schema/app/test.ts
Elias Nahum 790b1beb22
[Gekidou] push notifications (#5779)
* Push notifications entry point

* Process android notification natively only if RN is not initialized

* Database changes to store local channel viewed_at

* EphemeralStore wait until screen removed

* Move schedule session notification to utility

* Fix channel remote & local actions + added actions for markChannelAsViewed & fetchMyChannel

* Add fetchMyTeam remote action

* Add dismissAllModalsAndPopToScreen to navigation

* Improve post list component & add app state to re-trigger queries

* Improve WS implementation

* Handle push notification events

* Fix postsInChannel since handler

* Handle in-app notifications

* Post list to listen to column changes

* Track selected bottom tab in ephemeral store

* add useIsTablet hook

* in-app notifications on tablets
2021-10-27 17:53:11 -03:00

57 lines
2.3 KiB
TypeScript

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import {MM_TABLES} from '@constants/database';
import {schema} from './index';
const {INFO, GLOBAL, SERVERS} = MM_TABLES.APP;
describe('*** Test schema for APP database ***', () => {
it('=> The APP SCHEMA should strictly match', () => {
expect(schema).toEqual({
version: 1,
tables: {
[INFO]: {
name: INFO,
columns: {
build_number: {name: 'build_number', type: 'string'},
created_at: {name: 'created_at', type: 'number'},
version_number: {name: 'version_number', type: 'string'},
},
columnArray: [
{name: 'build_number', type: 'string'},
{name: 'created_at', type: 'number'},
{name: 'version_number', type: 'string'},
],
},
[GLOBAL]: {
name: GLOBAL,
columns: {
value: {name: 'value', type: 'string'},
},
columnArray: [
{name: 'value', type: 'string'},
],
},
[SERVERS]: {
name: SERVERS,
columns: {
db_path: {name: 'db_path', type: 'string'},
display_name: {name: 'display_name', type: 'string'},
url: {name: 'url', type: 'string', isIndexed: true},
last_active_at: {name: 'last_active_at', type: 'number', isIndexed: true},
identifier: {name: 'identifier', type: 'string', isIndexed: true},
},
columnArray: [
{name: 'db_path', type: 'string'},
{name: 'display_name', type: 'string'},
{name: 'url', type: 'string', isIndexed: true},
{name: 'last_active_at', type: 'number', isIndexed: true},
{name: 'identifier', type: 'string', isIndexed: true},
],
},
},
});
});
});