diff options
author | Paul Frazee <pfrazee@gmail.com> | 2023-03-13 16:01:43 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-13 16:01:43 -0500 |
commit | 56cf890debeb9872f791ccb992a5587f2c05fd9e (patch) | |
tree | 929453b41274a712d8b2fce441e98a0cd030d305 /__tests__ | |
parent | 503e03d91e1de4bfeabec1eb2d97dcdceb13fcc5 (diff) | |
download | voidsky-56cf890debeb9872f791ccb992a5587f2c05fd9e.tar.zst |
Move to expo and react-navigation (#288)
* WIP - adding expo * WIP - adding expo 2 * Fix tsc * Finish adding expo * Disable the 'require cycle' warning * Tweak plist * Modify some dependency versions to make expo happy * Fix icon fill * Get Web compiling for expo * 1.7 * Switch to react-navigation in expo2 (#287) * WIP Switch to react-navigation * WIP Switch to react-navigation 2 * WIP Switch to react-navigation 3 * Convert all screens to react navigation * Update BottomBar for react navigation * Update mobile menu to be react-native drawer * Fixes to drawer and bottombar * Factor out some helpers * Replace the navigation model with react-navigation * Restructure the shell folder and fix the header positioning * Restore the error boundary * Fix tsc * Implement not-found page * Remove react-native-gesture-handler (no longer used) * Handle notifee card presses * Handle all navigations from the state layer * Fix drawer behaviors * Fix two linking issues * Switch to our react-native-progress fork to fix an svg rendering issue * Get Web working with react-navigation * Refactor routes and navigation for a bit more clarity * Remove dead code * Rework Web shell to left/right nav to make this easier * Fix ViewHeader for desktop web * Hide profileheader back btn on desktop web * Move the compose button to the left nav * Implement reply prompt in threads for desktop web * Composer refactors * Factor out all platform-specific text input behaviors from the composer * Small fix * Update the web build to use tiptap for the composer * Tune up the mention autocomplete dropdown * Simplify the default avatar and banner * Fixes to link cards in web composer * Fix dropdowns on web * Tweak load latest on desktop * Add web beta message and feedback link * Fix up links in desktop web
Diffstat (limited to '__tests__')
-rw-r--r-- | __tests__/state/models/navigation.test.ts | 157 |
1 files changed, 0 insertions, 157 deletions
diff --git a/__tests__/state/models/navigation.test.ts b/__tests__/state/models/navigation.test.ts deleted file mode 100644 index 487fc18a2..000000000 --- a/__tests__/state/models/navigation.test.ts +++ /dev/null @@ -1,157 +0,0 @@ -import {RootStoreModel} from './../../../src/state/models/root-store' -import {NavigationModel} from './../../../src/state/models/navigation' -import * as flags from '../../../src/lib/build-flags' -import AtpAgent from '@atproto/api' -import {DEFAULT_SERVICE} from '../../../src/state' - -describe('NavigationModel', () => { - let model: NavigationModel - let rootStore: RootStoreModel - - beforeEach(() => { - rootStore = new RootStoreModel(new AtpAgent({service: DEFAULT_SERVICE})) - model = new NavigationModel(rootStore) - model.setTitle('0-0', 'title') - }) - - afterAll(() => { - jest.clearAllMocks() - }) - - it('should clear() to the correct base state', async () => { - await model.clear() - expect(model.tabCount).toBe(3) - expect(model.tab).toEqual({ - fixedTabPurpose: 0, - history: [ - { - id: expect.anything(), - ts: expect.anything(), - url: '/', - }, - ], - id: expect.anything(), - index: 0, - isNewTab: false, - }) - }) - - it('should call the navigate method', async () => { - const navigateSpy = jest.spyOn(model.tab, 'navigate') - await model.navigate('testurl', 'teststring') - expect(navigateSpy).toHaveBeenCalledWith('testurl', 'teststring') - }) - - it('should call the refresh method', async () => { - const refreshSpy = jest.spyOn(model.tab, 'refresh') - await model.refresh() - expect(refreshSpy).toHaveBeenCalled() - }) - - it('should call the isCurrentScreen method', () => { - expect(model.isCurrentScreen('11', 0)).toEqual(false) - }) - - it('should call the tab getter', () => { - expect(model.tab).toEqual({ - fixedTabPurpose: 0, - history: [ - { - id: expect.anything(), - ts: expect.anything(), - url: '/', - }, - ], - id: expect.anything(), - index: 0, - isNewTab: false, - }) - }) - - it('should call the tabCount getter', () => { - expect(model.tabCount).toBe(3) - }) - - describe('tabs not enabled', () => { - jest.mock('../../../src/lib/build-flags', () => ({ - TABS_ENABLED: false, - })) - - afterAll(() => { - jest.clearAllMocks() - }) - - it('should not create new tabs', () => { - // @ts-expect-error - flags.TABS_ENABLED = false - model.newTab('testurl') - expect(model.tab.isNewTab).toBe(false) - expect(model.tabIndex).toBe(0) - }) - - it('should not change the active tab', () => { - // @ts-expect-error - flags.TABS_ENABLED = false - model.setActiveTab(3) - expect(model.tabIndex).toBe(0) - }) - - it('should note close tabs', () => { - // @ts-expect-error - flags.TABS_ENABLED = false - model.closeTab(0) - expect(model.tabCount).toBe(3) - }) - }) - - // TODO restore when tabs get re-enabled - // describe('tabs enabled', () => { - // jest.mock('../../../src/build-flags', () => ({ - // TABS_ENABLED: true, - // })) - - // afterAll(() => { - // jest.clearAllMocks() - // }) - - // it('should create new tabs', () => { - // // @ts-expect-error - // flags.TABS_ENABLED = true - - // model.newTab('testurl', 'title') - // expect(model.tab.isNewTab).toBe(true) - // expect(model.tabIndex).toBe(2) - // }) - - // it('should change the current tab', () => { - // // @ts-expect-error - // flags.TABS_ENABLED = true - - // model.setActiveTab(0) - // expect(model.tabIndex).toBe(0) - // }) - - // it('should close tabs', () => { - // // @ts-expect-error - // flags.TABS_ENABLED = true - - // model.closeTab(0) - // expect(model.tabs).toEqual([ - // { - // fixedTabPurpose: 1, - // history: [ - // { - // id: expect.anything(), - // ts: expect.anything(), - // url: '/notifications', - // }, - // ], - // id: expect.anything(), - // index: 0, - // isNewTab: false, - // }, - // ]) - // expect(model.tabIndex).toBe(0) - // }) - // }) -}) |