|
const expectDate = async date => {
|
|
await waitFor(element(by.id('dateOutput')))
|
|
.toHaveText(date)
|
|
.withTimeout(10000);
|
|
await expect(element(by.id('dateOutput'))).toHaveText(date);
|
|
};
|
|
|
|
const expectDateString = async date => {
|
|
await expect(element(by.id('dateStringOutput'))).toHaveText(date);
|
|
};
|
|
|
|
const reset = async () => {
|
|
await element(by.id('props/scroll')).tap();
|
|
await element(by.id('reset')).tap();
|
|
};
|
|
|
|
const scrollWheel = async (index, times) => {
|
|
await element(by.id('props/scroll')).tap();
|
|
await element(by.id('wheelIndex')).replaceText(`${index}`);
|
|
await element(by.id('scrollTimes')).replaceText(`${times}`);
|
|
await element(by.id('doScroll')).tap();
|
|
};
|
|
|
|
const changeProp = name => async value => {
|
|
await element(by.id('propName')).replaceText(name);
|
|
await element(by.id('propValue')).replaceText(`${value}`);
|
|
await element(by.id('changeProp')).tap();
|
|
};
|
|
|
|
const scrollWheelWithIndexAndExpectDate = async (index, expectedDate) => {
|
|
await scrollWheel(index, 1);
|
|
await expectDate(expectedDate);
|
|
await reset();
|
|
};
|
|
|
|
const init = async () => {
|
|
await device.launchApp();
|
|
await device.reloadReactNative();
|
|
};
|
|
|
|
exports.setDate = changeProp('date');
|
|
exports.setLocale = changeProp('locale');
|
|
exports.setMinimumDate = changeProp('minimumDate');
|
|
exports.setMaximumDate = changeProp('maximumDate');
|
|
exports.setMinuteInterval = changeProp('minuteInterval');
|
|
exports.setTimeZoneOffsetInMinutes = changeProp('timeZoneOffsetInMinutes');
|
|
exports.setMode = changeProp('mode');
|
|
exports.scrollWheel = scrollWheel;
|
|
exports.expectDate = expectDate;
|
|
exports.expectDateString = expectDateString;
|
|
exports.scrollWheelWithIndexAndExpectDate = scrollWheelWithIndexAndExpectDate;
|
|
exports.reset = reset;
|
|
exports.init = init;
|