Test all pages
This commit is contained in:
parent
3c953530a4
commit
ad95438120
10
jestSetup.ts
10
jestSetup.ts
|
@ -1,13 +1,19 @@
|
||||||
import 'react-native-gesture-handler/jestSetup'
|
import 'react-native-gesture-handler/jestSetup'
|
||||||
import {NativeModules as RNNativeModules} from 'react-native'
|
import {NativeModules} from 'react-native'
|
||||||
|
|
||||||
RNNativeModules.RNViewShot = RNNativeModules.RNViewShot || {
|
NativeModules.RNViewShot = NativeModules.RNViewShot || {
|
||||||
captureScreen: jest.fn(),
|
captureScreen: jest.fn(),
|
||||||
}
|
}
|
||||||
|
NativeModules.SettingsModule = NativeModules.SettingsModule || {
|
||||||
|
ignoringBattery: jest.fn(),
|
||||||
|
is24: jest.fn(() => Promise.resolve(true)),
|
||||||
|
}
|
||||||
|
|
||||||
jest.mock('react-native-file-access', () => jest.fn())
|
jest.mock('react-native-file-access', () => jest.fn())
|
||||||
jest.mock('react-native-share', () => jest.fn())
|
jest.mock('react-native-share', () => jest.fn())
|
||||||
jest.mock('react-native/Libraries/Animated/NativeAnimatedHelper')
|
jest.mock('react-native/Libraries/Animated/NativeAnimatedHelper')
|
||||||
|
jest.mock('react-native/Libraries/EventEmitter/NativeEventEmitter')
|
||||||
|
|
||||||
//jest.mock('react-native-reanimated', () => {
|
//jest.mock('react-native-reanimated', () => {
|
||||||
// const Reanimated = require('react-native-reanimated/mock')
|
// const Reanimated = require('react-native-reanimated/mock')
|
||||||
// Reanimated.default.call = () => {}
|
// Reanimated.default.call = () => {}
|
||||||
|
|
27
tests/BestPage.test.tsx
Normal file
27
tests/BestPage.test.tsx
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
import React from 'react'
|
||||||
|
import 'react-native'
|
||||||
|
import {render, waitFor} from 'react-native-testing-library'
|
||||||
|
import {Repository} from 'typeorm'
|
||||||
|
import BestPage from '../BestPage'
|
||||||
|
import GymSet from '../gym-set'
|
||||||
|
import {MockProviders} from '../mock-providers'
|
||||||
|
import Settings from '../settings'
|
||||||
|
|
||||||
|
jest.mock('../db.ts', () => ({
|
||||||
|
setRepo: {find: () => Promise.resolve([])} as Repository<GymSet>,
|
||||||
|
settingsRepo: {
|
||||||
|
findOne: () => Promise.resolve({} as Settings),
|
||||||
|
},
|
||||||
|
}))
|
||||||
|
|
||||||
|
describe('PlanPage', () => {
|
||||||
|
it('renders correctly', async () => {
|
||||||
|
const {getByText} = render(
|
||||||
|
<MockProviders>
|
||||||
|
<BestPage />
|
||||||
|
</MockProviders>,
|
||||||
|
)
|
||||||
|
const title = await waitFor(() => getByText('Best'))
|
||||||
|
expect(title).toBeDefined()
|
||||||
|
})
|
||||||
|
})
|
27
tests/PlanPage.test.tsx
Normal file
27
tests/PlanPage.test.tsx
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
import React from 'react'
|
||||||
|
import 'react-native'
|
||||||
|
import {render, waitFor} from 'react-native-testing-library'
|
||||||
|
import {Repository} from 'typeorm'
|
||||||
|
import GymSet from '../gym-set'
|
||||||
|
import {MockProviders} from '../mock-providers'
|
||||||
|
import PlanPage from '../PlanPage'
|
||||||
|
import Settings from '../settings'
|
||||||
|
|
||||||
|
jest.mock('../db.ts', () => ({
|
||||||
|
setRepo: {find: () => Promise.resolve([])} as Repository<GymSet>,
|
||||||
|
settingsRepo: {
|
||||||
|
findOne: () => Promise.resolve({} as Settings),
|
||||||
|
},
|
||||||
|
}))
|
||||||
|
|
||||||
|
describe('PlanPage', () => {
|
||||||
|
it('renders correctly', async () => {
|
||||||
|
const {getByText} = render(
|
||||||
|
<MockProviders>
|
||||||
|
<PlanPage />
|
||||||
|
</MockProviders>,
|
||||||
|
)
|
||||||
|
const title = await waitFor(() => getByText('Plans'))
|
||||||
|
expect(title).toBeDefined()
|
||||||
|
})
|
||||||
|
})
|
32
tests/SettingsPage.test.tsx
Normal file
32
tests/SettingsPage.test.tsx
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
import React from 'react'
|
||||||
|
import 'react-native'
|
||||||
|
import {render, waitFor} from 'react-native-testing-library'
|
||||||
|
import {Repository} from 'typeorm'
|
||||||
|
import GymSet from '../gym-set'
|
||||||
|
import {MockProviders} from '../mock-providers'
|
||||||
|
import Settings from '../settings'
|
||||||
|
import SettingsPage from '../SettingsPage'
|
||||||
|
|
||||||
|
jest.mock('../db.ts', () => ({
|
||||||
|
setRepo: {find: () => Promise.resolve([])} as Repository<GymSet>,
|
||||||
|
settingsRepo: {
|
||||||
|
findOne: () => Promise.resolve({} as Settings),
|
||||||
|
},
|
||||||
|
}))
|
||||||
|
|
||||||
|
describe('PlanPage', () => {
|
||||||
|
it('renders correctly', async () => {
|
||||||
|
const {getByText, getAllByText} = render(
|
||||||
|
<MockProviders>
|
||||||
|
<SettingsPage />
|
||||||
|
</MockProviders>,
|
||||||
|
)
|
||||||
|
const title = await waitFor(() => getByText('Settings'))
|
||||||
|
expect(title).toBeDefined()
|
||||||
|
expect(getByText(/timers/i)).toBeDefined()
|
||||||
|
expect(getByText(/vibrate/i)).toBeDefined()
|
||||||
|
expect(getByText(/notifications/i)).toBeDefined()
|
||||||
|
expect(getByText(/images/i)).toBeDefined()
|
||||||
|
expect(getAllByText(/theme/i).length).toBeGreaterThan(0)
|
||||||
|
})
|
||||||
|
})
|
27
tests/TimerPage.test.tsx
Normal file
27
tests/TimerPage.test.tsx
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
import React from 'react'
|
||||||
|
import 'react-native'
|
||||||
|
import {render, waitFor} from 'react-native-testing-library'
|
||||||
|
import {Repository} from 'typeorm'
|
||||||
|
import GymSet from '../gym-set'
|
||||||
|
import {MockProviders} from '../mock-providers'
|
||||||
|
import Settings from '../settings'
|
||||||
|
import TimerPage from '../TimerPage'
|
||||||
|
|
||||||
|
jest.mock('../db.ts', () => ({
|
||||||
|
setRepo: {find: () => Promise.resolve([])} as Repository<GymSet>,
|
||||||
|
settingsRepo: {
|
||||||
|
findOne: () => Promise.resolve({} as Settings),
|
||||||
|
},
|
||||||
|
}))
|
||||||
|
|
||||||
|
describe('PlanPage', () => {
|
||||||
|
it('renders correctly', async () => {
|
||||||
|
const {getByText} = render(
|
||||||
|
<MockProviders>
|
||||||
|
<TimerPage />
|
||||||
|
</MockProviders>,
|
||||||
|
)
|
||||||
|
const title = await waitFor(() => getByText('Timer'))
|
||||||
|
expect(title).toBeDefined()
|
||||||
|
})
|
||||||
|
})
|
27
tests/WorkoutsPage.test.tsx
Normal file
27
tests/WorkoutsPage.test.tsx
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
import React from 'react'
|
||||||
|
import 'react-native'
|
||||||
|
import {render, waitFor} from 'react-native-testing-library'
|
||||||
|
import {Repository} from 'typeorm'
|
||||||
|
import GymSet from '../gym-set'
|
||||||
|
import {MockProviders} from '../mock-providers'
|
||||||
|
import Settings from '../settings'
|
||||||
|
import WorkoutsPage from '../WorkoutsPage'
|
||||||
|
|
||||||
|
jest.mock('../db.ts', () => ({
|
||||||
|
setRepo: {find: () => Promise.resolve([])} as Repository<GymSet>,
|
||||||
|
settingsRepo: {
|
||||||
|
findOne: () => Promise.resolve({} as Settings),
|
||||||
|
},
|
||||||
|
}))
|
||||||
|
|
||||||
|
describe('PlanPage', () => {
|
||||||
|
it('renders correctly', async () => {
|
||||||
|
const {getByText} = render(
|
||||||
|
<MockProviders>
|
||||||
|
<WorkoutsPage />
|
||||||
|
</MockProviders>,
|
||||||
|
)
|
||||||
|
const title = await waitFor(() => getByText('Workouts'))
|
||||||
|
expect(title).toBeDefined()
|
||||||
|
})
|
||||||
|
})
|
Loading…
Reference in New Issue
Block a user