提交 acc8f1f0 编写于 作者: DCloud-WZF's avatar DCloud-WZF 💬

test(general event): 更新测试例

上级 55530cae
......@@ -3,62 +3,191 @@ const PAGE_PATH = '/pages/component/general-event/general-event'
describe('event trigger sequence', () => {
const platformInfo = process.env.uniTestPlatformInfo.toLocaleLowerCase()
const isAndroid = platformInfo.startsWith('android')
const isIos = platformInfo.startsWith('ios')
let page
let el
beforeAll(async () => {
page = await program.navigateTo(PAGE_PATH)
await page.waitFor('view')
el = await page.$('.target')
})
it('touch', async () => {
if (process.env.uniTestPlatformInfo.startsWith('android') && !process.env.UNI_AUTOMATOR_APP_WEBVIEW) {
if (!process.env.UNI_AUTOMATOR_APP_WEBVIEW) {
const el = await page.$('#touch-target')
await el.touchstart({
touches: [{
identifier: 1,
pageX: 100,
pageY: 100,
pageX: 101,
pageY: 101,
clientX: 101,
clientY: 101,
screenX: 101,
screenY: 101
}, ],
changedTouches: [{
identifier: 1,
pageX: 100,
pageY: 100,
pageX: 101,
pageY: 101,
clientX: 101,
clientY: 101,
screenX: 101,
screenY: 101
}, ],
})
const touchStartTouchTargetIdentifier = isAndroid ? '1.0' : '1'
const touchStartTouchTargetValue = isAndroid ? '101.0' : '101'
const touchStartTouchIdentifier = await page.$('#touch-start-touch-identifier')
expect(await touchStartTouchIdentifier.text()).toBe(touchStartTouchTargetIdentifier)
const touchStartTouchPageX = await page.$('#touch-start-touch-page-x')
expect(await touchStartTouchPageX.text()).toBe(touchStartTouchTargetValue)
const touchStartTouchPageY = await page.$('#touch-start-touch-page-y')
expect(await touchStartTouchPageY.text()).toBe(touchStartTouchTargetValue)
const touchStartTouchClientX = await page.$('#touch-start-touch-client-x')
expect(await touchStartTouchClientX.text()).toBe(touchStartTouchTargetValue)
const touchStartTouchClientY = await page.$('#touch-start-touch-client-y')
expect(await touchStartTouchClientY.text()).toBe(touchStartTouchTargetValue)
const touchStartTouchScreenX = await page.$('#touch-start-touch-screen-x')
expect(await touchStartTouchScreenX.text()).toBe(touchStartTouchTargetValue)
const touchStartTouchScreenY = await page.$('#touch-start-touch-screen-y')
expect(await touchStartTouchScreenY.text()).toBe(touchStartTouchTargetValue)
const touchStartChangedTouchIdentifier = await page.$('#touch-start-changed-touch-identifier')
expect(await touchStartChangedTouchIdentifier.text()).toBe(touchStartTouchTargetIdentifier)
const touchStartChangedTouchPageX = await page.$('#touch-start-changed-touch-page-x')
expect(await touchStartChangedTouchPageX.text()).toBe(touchStartTouchTargetValue)
const touchStartChangedTouchPageY = await page.$('#touch-start-changed-touch-page-y')
expect(await touchStartChangedTouchPageY.text()).toBe(touchStartTouchTargetValue)
const touchStartChangedTouchClientX = await page.$('#touch-start-changed-touch-client-x')
expect(await touchStartChangedTouchClientX.text()).toBe(touchStartTouchTargetValue)
const touchStartChangedTouchClientY = await page.$('#touch-start-changed-touch-client-y')
expect(await touchStartChangedTouchClientY.text()).toBe(touchStartTouchTargetValue)
const touchStartChangedTouchScreenX = await page.$('#touch-start-changed-touch-screen-x')
expect(await touchStartChangedTouchScreenX.text()).toBe(touchStartTouchTargetValue)
const touchStartChangedTouchScreenY = await page.$('#touch-start-changed-touch-screen-y')
expect(await touchStartChangedTouchScreenY.text()).toBe(touchStartTouchTargetValue)
await el.touchmove({
touches: [{
identifier: 1,
pageX: 100,
pageY: 100,
}, ],
pageX: 102,
pageY: 102,
clientX: 102,
clientY: 102,
screenX: 102,
screenY: 102
}],
changedTouches: [{
identifier: 1,
pageX: 101,
pageY: 101,
pageX: 102,
pageY: 102,
clientX: 102,
clientY: 102,
screenX: 102,
screenY: 102
}, ],
})
const touchMoveTouchTargetIdentifier = isAndroid ? '1.0' : '1'
const touchMoveTouchTargetValue = isAndroid ? '102.0' : '102'
const touchMoveTouchIdentifier = await page.$('#touch-move-touch-identifier')
expect(await touchMoveTouchIdentifier.text()).toBe(touchMoveTouchTargetIdentifier)
const touchMoveTouchPageX = await page.$('#touch-move-touch-page-x')
expect(await touchMoveTouchPageX.text()).toBe(touchMoveTouchTargetValue)
const touchMoveTouchPageY = await page.$('#touch-move-touch-page-y')
expect(await touchMoveTouchPageY.text()).toBe(touchMoveTouchTargetValue)
const touchMoveTouchClientX = await page.$('#touch-move-touch-client-x')
expect(await touchMoveTouchClientX.text()).toBe(touchMoveTouchTargetValue)
const touchMoveTouchClientY = await page.$('#touch-move-touch-client-y')
expect(await touchMoveTouchClientY.text()).toBe(touchMoveTouchTargetValue)
const touchMoveTouchScreenX = await page.$('#touch-move-touch-screen-x')
expect(await touchMoveTouchScreenX.text()).toBe(touchMoveTouchTargetValue)
const touchMoveTouchScreenY = await page.$('#touch-move-touch-screen-y')
expect(await touchMoveTouchScreenY.text()).toBe(touchMoveTouchTargetValue)
const touchMoveChangedTouchIdentifier = await page.$('#touch-move-changed-touch-identifier')
expect(await touchMoveChangedTouchIdentifier.text()).toBe(touchMoveTouchTargetIdentifier)
const touchMoveChangedTouchPageX = await page.$('#touch-move-changed-touch-page-x')
expect(await touchMoveChangedTouchPageX.text()).toBe(touchMoveTouchTargetValue)
const touchMoveChangedTouchPageY = await page.$('#touch-move-changed-touch-page-y')
expect(await touchMoveChangedTouchPageY.text()).toBe(touchMoveTouchTargetValue)
const touchMoveChangedTouchClientX = await page.$('#touch-move-changed-touch-client-x')
expect(await touchMoveChangedTouchClientX.text()).toBe(touchMoveTouchTargetValue)
const touchMoveChangedTouchClientY = await page.$('#touch-move-changed-touch-client-y')
expect(await touchMoveChangedTouchClientY.text()).toBe(touchMoveTouchTargetValue)
const touchMoveChangedTouchScreenX = await page.$('#touch-move-changed-touch-screen-x')
expect(await touchMoveChangedTouchScreenX.text()).toBe(touchMoveTouchTargetValue)
const touchMoveChangedTouchScreenY = await page.$('#touch-move-changed-touch-screen-y')
expect(await touchMoveChangedTouchScreenY.text()).toBe(touchMoveTouchTargetValue)
await el.touchend({
touches: [],
touches: [{
identifier: 1,
pageX: 103,
pageY: 103,
clientX: 103,
clientY: 103,
screenX: 103,
screenY: 103
}],
changedTouches: [{
identifier: 1,
pageX: 101,
pageY: 101,
pageX: 103,
pageY: 103,
clientX: 103,
clientY: 103,
screenX: 103,
screenY: 103
}, ],
})
const data = await page.data()
expect(data.onTouchStartTime).toBeLessThanOrEqual(data.onTouchMoveTime);
expect(data.onTouchMoveTime).toBeLessThanOrEqual(data.onTouchEndTime);
const touchEndTouchTargetIdentifier = isAndroid ? '1.0' : '1'
const touchEndTouchTargetValue = isAndroid ? '103.0' : '103'
const touchEndTouchIdentifier = await page.$('#touch-end-touch-identifier')
expect(await touchEndTouchIdentifier.text()).toBe(touchEndTouchTargetIdentifier)
const touchEndTouchPageX = await page.$('#touch-end-touch-page-x')
expect(await touchEndTouchPageX.text()).toBe(touchEndTouchTargetValue)
const touchEndTouchPageY = await page.$('#touch-end-touch-page-y')
expect(await touchEndTouchPageY.text()).toBe(touchEndTouchTargetValue)
const touchEndTouchClientX = await page.$('#touch-end-touch-client-x')
expect(await touchEndTouchClientX.text()).toBe(touchEndTouchTargetValue)
const touchEndTouchClientY = await page.$('#touch-end-touch-client-y')
expect(await touchEndTouchClientY.text()).toBe(touchEndTouchTargetValue)
const touchEndTouchScreenX = await page.$('#touch-end-touch-screen-x')
expect(await touchEndTouchScreenX.text()).toBe(touchEndTouchTargetValue)
const touchEndTouchScreenY = await page.$('#touch-end-touch-screen-y')
expect(await touchEndTouchScreenY.text()).toBe(touchEndTouchTargetValue)
const touchEndChangedTouchIdentifier = await page.$('#touch-end-changed-touch-identifier')
expect(await touchEndChangedTouchIdentifier.text()).toBe(touchEndTouchTargetIdentifier)
const touchEndChangedTouchPageX = await page.$('#touch-end-changed-touch-page-x')
expect(await touchEndChangedTouchPageX.text()).toBe(touchEndTouchTargetValue)
const touchEndChangedTouchPageY = await page.$('#touch-end-changed-touch-page-y')
expect(await touchEndChangedTouchPageY.text()).toBe(touchEndTouchTargetValue)
const touchEndChangedTouchClientX = await page.$('#touch-end-changed-touch-client-x')
expect(await touchEndChangedTouchClientX.text()).toBe(touchEndTouchTargetValue)
const touchEndChangedTouchClientY = await page.$('#touch-end-changed-touch-client-y')
expect(await touchEndChangedTouchClientY.text()).toBe(touchEndTouchTargetValue)
const touchEndChangedTouchScreenX = await page.$('#touch-end-changed-touch-screen-x')
expect(await touchEndChangedTouchScreenX.text()).toBe(touchEndTouchTargetValue)
const touchEndChangedTouchScreenY = await page.$('#touch-end-changed-touch-screen-y')
expect(await touchEndChangedTouchScreenY.text()).toBe(touchEndTouchTargetValue)
}
})
it('click', async () => {
const el = await page.$('#longpress-target')
await el.tap()
const data = await page.data()
expect(data.onTapTime).toBeLessThanOrEqual(data.onClickTime)
const targetX = isAndroid ? '0.0' : '0'
const targetY = isAndroid ? '0.0' : '0'
const tapEventX = await page.$('#tap-event-x')
expect(await tapEventX.text()).toBe(targetX)
const tapEventY = await page.$('#tap-event-y')
expect(await tapEventY.text()).toBe(targetY)
const clickEventX = await page.$('#click-event-x')
expect(await clickEventX.text()).toBe(targetX)
const clickEventY = await page.$('#click-event-y')
expect(await clickEventY.text()).toBe(targetY)
})
it('longPress', async () => {
if (process.env.uniTestPlatformInfo.startsWith('android') && !process.env.UNI_AUTOMATOR_APP_WEBVIEW) {
if (!process.env.UNI_AUTOMATOR_APP_WEBVIEW) {
const el = await page.$('#longpress-target')
await el.longpress()
const longPressTouchTargetIdentifier = isAndroid ? '1.0' : '1'
const longPressTouchTargetValue = isAndroid ? '0.0' : '0'
......@@ -90,6 +219,64 @@ describe('event trigger sequence', () => {
expect(await longPressChangedTouchScreenX.text()).toBe(longPressTouchTargetValue)
const longPressChangedTouchScreenY = await page.$('#long-press-changed-touch-screen-y')
expect(await longPressChangedTouchScreenY.text()).toBe(longPressTouchTargetValue)
if (isAndroid || isIos) {
if (isAndroid) {
await program.tap({
x: 200,
y: 1000,
duration: 1000
})
} else if (isIos) {
await program.tap({
x: 200,
y: 400,
duration: 1000
})
}
const longPressTouchIdentifierText = await longPressTouchIdentifier.text()
expect(longPressTouchIdentifierText).not.toBe(longPressTouchTargetIdentifier)
expect(longPressTouchIdentifierText).toBeTruthy()
const longPressTouchPageXText = await longPressTouchPageX.text()
expect(longPressTouchPageXText).not.toBe(longPressTouchTargetValue)
expect(longPressTouchPageXText).toBeTruthy()
const longPressTouchPageYText = await longPressTouchPageY.text()
expect(longPressTouchPageYText).not.toBe(longPressTouchTargetValue)
expect(longPressTouchPageYText).toBeTruthy()
const longPressTouchClientXText = await longPressTouchClientX.text()
expect(longPressTouchClientXText).not.toBe(longPressTouchTargetValue)
expect(longPressTouchClientXText).toBeTruthy()
const longPressTouchClientYText = await longPressTouchClientY.text()
expect(longPressTouchClientYText).not.toBe(longPressTouchTargetValue)
expect(longPressTouchClientYText).toBeTruthy()
const longPressTouchScreenXText = await longPressTouchScreenX.text()
expect(longPressTouchScreenXText).not.toBe(longPressTouchTargetValue)
expect(longPressTouchScreenXText).toBeTruthy()
const longPressTouchScreenYText = await longPressTouchScreenY.text()
expect(longPressTouchScreenYText).not.toBe(longPressTouchTargetValue)
expect(longPressTouchScreenYText).toBeTruthy()
const longPressChangedTouchIdentifierText = await longPressChangedTouchIdentifier.text()
expect(longPressChangedTouchIdentifierText).not.toBe(longPressTouchTargetIdentifier)
expect(longPressChangedTouchIdentifierText).toBeTruthy()
const longPressChangedTouchPageXText = await longPressChangedTouchPageX.text()
expect(longPressChangedTouchPageXText).not.toBe(longPressTouchTargetValue)
expect(longPressChangedTouchPageXText).toBeTruthy()
const longPressChangedTouchPageYText = await longPressChangedTouchPageY.text()
expect(longPressChangedTouchPageYText).not.toBe(longPressTouchTargetValue)
expect(longPressChangedTouchPageYText).toBeTruthy()
const longPressChangedTouchClientXText = await longPressChangedTouchClientX.text()
expect(longPressChangedTouchClientXText).not.toBe(longPressTouchTargetValue)
expect(longPressChangedTouchClientXText).toBeTruthy()
const longPressChangedTouchClientYText = await longPressChangedTouchClientY.text()
expect(longPressChangedTouchClientYText).not.toBe(longPressTouchTargetValue)
expect(longPressChangedTouchClientYText).toBeTruthy()
const longPressChangedTouchScreenXText = await longPressChangedTouchScreenX.text()
expect(longPressChangedTouchScreenXText).not.toBe(longPressTouchTargetValue)
expect(longPressChangedTouchScreenXText).toBeTruthy()
const longPressChangedTouchScreenYText = await longPressChangedTouchScreenY.text()
expect(longPressChangedTouchScreenYText).not.toBe(longPressTouchTargetValue)
expect(longPressChangedTouchScreenYText).toBeTruthy()
}
}
})
})
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册