You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

52 lines
1.5 KiB

const { scrollWheel, expectDate, setDate, setMode, setMaximumDate, setMinimumDate } = require('../utils')
const scrollDays = (days) => scrollWheel(1, days)
describe('Invalid dates', () => {
before(async () => {
await device.reloadReactNative()
await element(by.text('Advanced')).tap()
await setMinimumDate(undefined)
await setMaximumDate(undefined)
await setMode('date')
})
it('scrolls back to last valid date', async () => {
await setDate(new Date("2001-02-28 00:00"))
await scrollDays(1)
await expectDate('2001-02-28 00:00:00')
})
it('scrolls back after scrolling multiple dates', async () => {
await setDate(new Date("2001-02-27 00:00"))
await scrollDays(2)
await expectDate('2001-02-28 00:00:00')
})
it('not scrolling back on unusual valid dates', async () => {
await setDate(new Date("2000-02-28 00:00"))
await scrollDays(1)
await expectDate('2000-02-29 00:00:00')
})
it('not scrolling back after scrolling past invalid dates', async () => {
await setDate(new Date("2001-02-28 00:00"))
await scrollDays(4)
await expectDate('2001-02-01 00:00:00')
})
it('works on months with 30 days', async () => {
await setDate(new Date("2001-04-30 00:00"))
await scrollDays(1)
await expectDate('2001-04-30 00:00:00')
})
it('works on months with 31 days', async () => {
await setDate(new Date("2001-05-30 00:00"))
await scrollDays(1)
await expectDate('2001-05-31 00:00:00')
})
})