const platformInfo = process.env.uniTestPlatformInfo.toLocaleLowerCase()
const isMP = platformInfo.startsWith('mp')
describe('component-native-scroll-view-props', () => {
let page;
beforeAll(async () => {
page = await program.reLaunch('/pages/component/scroll-view/scroll-view-props');
await page.waitFor(300);
});
async function setPageData(newData) {
return await page.setData({ data: newData });
}
if(!isMP) {
it('check_scroll_height', async () => {
await setPageData({ scrollX: false })
await page.waitFor(300);
const value = await page.callMethod('checkScrollHeight')
expect(value).toBe(true)
})
}
it('check_scroll_top', async () => {
await setPageData({ scrollTop: 600 })
await page.waitFor(600)
const scrollChangeTop = await page.data('data.scrollChangeTop')
console.log("scrollChangeTop="+scrollChangeTop)
expect(scrollChangeTop-600).toBeGreaterThanOrEqual(0)
const element = await page.$('#scrollViewY')
const scrollTop = await element.property("scrollTop")
console.log("check_scroll_top---"+scrollTop)
expect(scrollTop-600).toBeGreaterThanOrEqual(0)
})
it('check_scroll_into_view_top', async () => {
await setPageData({ scrollIntoView: "item3" })
await page.waitFor(600)
const element = await page.$('#scrollViewY')
const scrollTop = await element.property("scrollTop")
console.log("check_scroll_into_view_top--"+scrollTop)
await setPageData({ scrollIntoView: "" })
expect(scrollTop-570).toBeGreaterThanOrEqual(0)
})
if(!isMP) {
it('check_scroll_width', async () => {
await setPageData({ scrollX: true })
await page.waitFor(300);
const value = await page.callMethod('checkScrollWidth')
expect(value).toBe(true)
})
}
it('check_scroll_left', async () => {
await setPageData({ scrollX: true })
await setPageData({ scrollLeft: 600 })
await page.waitFor(600)
const element = await page.$('#scrollViewX')
const scrollLeft = await element.property("scrollLeft")
console.log("check_scroll_left---"+scrollLeft)
expect(scrollLeft-600).toBeGreaterThanOrEqual(0)
})
it('check_scroll_into_view_left', async () => {
await setPageData({ scrollX: true })
await setPageData({ scrollIntoView: "horizontal_item3" })
await page.waitFor(600)
const element = await page.$('#scrollViewX')
const scrollLeft = await element.property("scrollLeft")
console.log("check_scroll_into_view_left--"+scrollLeft)
await setPageData({ scrollIntoView: "" })
expect(scrollLeft-930).toBeGreaterThanOrEqual(0)
})
it('scroll-view-props-screenshot', async () => {
await setPageData({ showScrollbar: false })
await page.waitFor(1000);
const image = await program.screenshot({fullPage: true});
expect(image).toSaveImageSnapshot();
})
it('scroll-view-props-last-item-screenshot', async () => {
await setPageData({ scrollLeft: 10000 })
await page.waitFor(1000);
const image = await program.screenshot({fullPage: true});
expect(image).toSaveImageSnapshot();
})
});