269 lines
9.6 KiB
JavaScript
269 lines
9.6 KiB
JavaScript
function didShowKeyboard()
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
uiController.didShowKeyboardCallback = function() {
|
|
uiController.uiScriptComplete();
|
|
}
|
|
})();`, resolve);
|
|
});
|
|
}
|
|
|
|
function doubleTapToZoomAtPoint(x, y)
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
let completionCount = 0;
|
|
const checkDone = () => {
|
|
if (++completionCount == 3)
|
|
uiController.uiScriptComplete();
|
|
};
|
|
uiController.didEndZoomingCallback = checkDone;
|
|
uiController.singleTapAtPoint(${x}, ${y}, checkDone);
|
|
uiController.singleTapAtPoint(${x}, ${y}, checkDone);
|
|
})();`, resolve);
|
|
});
|
|
}
|
|
|
|
function doubleTapAtPoint(x, y)
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
uiController.doubleTapAtPoint(${x}, ${y}, 0, function() {
|
|
uiController.uiScriptComplete();
|
|
});
|
|
})();`, resolve);
|
|
});
|
|
}
|
|
|
|
function longPressAtPoint(x, y)
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
uiController.longPressAtPoint(${x}, ${y}, function() {
|
|
uiController.uiScriptComplete();
|
|
});
|
|
})();`, resolve);
|
|
});
|
|
}
|
|
|
|
function liftUpAtPoint(x, y)
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
uiController.liftUpAtPoint(${x}, ${y}, 1, function() {
|
|
uiController.uiScriptComplete();
|
|
});
|
|
})();`, resolve);
|
|
});
|
|
}
|
|
|
|
function longPressAndHoldAtPoint(x, y)
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
const eventStream = {
|
|
events : [
|
|
{
|
|
interpolate : "linear",
|
|
timestep: 0.1,
|
|
coordinateSpace : "content",
|
|
startEvent : {
|
|
inputType : "hand",
|
|
timeOffset : 0,
|
|
touches : [
|
|
{
|
|
inputType : "finger",
|
|
phase : "began",
|
|
id : 1,
|
|
x : ${x},
|
|
y : ${y},
|
|
pressure : 0
|
|
}
|
|
]
|
|
},
|
|
endEvent : {
|
|
inputType : "hand",
|
|
timeOffset : 2.0,
|
|
touches : [
|
|
{
|
|
inputType : "finger",
|
|
phase : "moved",
|
|
id : 1,
|
|
x : ${x},
|
|
y : ${y},
|
|
pressure : 0
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
};
|
|
|
|
uiController.sendEventStream(JSON.stringify(eventStream), () => uiController.uiScriptComplete());
|
|
})();`, resolve);
|
|
});
|
|
}
|
|
|
|
function tapAtPoint(x, y)
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
uiController.singleTapAtPoint(${x}, ${y}, function() {
|
|
uiController.uiScriptComplete();
|
|
});
|
|
})();`, resolve);
|
|
});
|
|
}
|
|
|
|
function touchAndDragFromPointToPoint(startX, startY, endX, endY)
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
const eventStream = {
|
|
events : [
|
|
{
|
|
interpolate : "linear",
|
|
timestep: 0.1,
|
|
coordinateSpace : "content",
|
|
startEvent : {
|
|
inputType : "hand",
|
|
timeOffset : 0,
|
|
touches : [
|
|
{
|
|
inputType : "finger",
|
|
phase : "began",
|
|
id : 1,
|
|
x : ${startX},
|
|
y : ${startY},
|
|
pressure : 0
|
|
}
|
|
]
|
|
},
|
|
endEvent : {
|
|
inputType : "hand",
|
|
timeOffset : 0.5,
|
|
touches : [
|
|
{
|
|
inputType : "finger",
|
|
phase : "moved",
|
|
id : 1,
|
|
x : ${endX},
|
|
y : ${endY},
|
|
pressure : 0
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
};
|
|
|
|
uiController.sendEventStream(JSON.stringify(eventStream), () => uiController.uiScriptComplete());
|
|
})();`, resolve);
|
|
});
|
|
}
|
|
|
|
function holdAtPoint(x, y)
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
const eventStream = {
|
|
events : [
|
|
{
|
|
interpolate : "linear",
|
|
timestep: 0.1,
|
|
coordinateSpace : "content",
|
|
startEvent : {
|
|
inputType : "hand",
|
|
timeOffset : 0,
|
|
touches : [
|
|
{
|
|
inputType : "finger",
|
|
phase : "moved",
|
|
id : 1,
|
|
x : ${x},
|
|
y : ${y},
|
|
pressure : 0
|
|
}
|
|
]
|
|
},
|
|
endEvent : {
|
|
inputType : "hand",
|
|
timeOffset : 5.0,
|
|
touches : [
|
|
{
|
|
inputType : "finger",
|
|
phase : "moved",
|
|
id : 1,
|
|
x : ${x},
|
|
y : ${y},
|
|
pressure : 0
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
};
|
|
|
|
uiController.sendEventStream(JSON.stringify(eventStream), () => uiController.uiScriptComplete());
|
|
})();`, resolve);
|
|
});
|
|
}
|
|
|
|
function continueTouchAndDragFromPointToPoint(startX, startY, endX, endY)
|
|
{
|
|
return new Promise(resolve => {
|
|
testRunner.runUIScript(`
|
|
(function() {
|
|
const eventStream = {
|
|
events : [
|
|
{
|
|
interpolate : "linear",
|
|
timestep: 0.1,
|
|
coordinateSpace : "content",
|
|
startEvent : {
|
|
inputType : "hand",
|
|
timeOffset : 0,
|
|
touches : [
|
|
{
|
|
inputType : "finger",
|
|
phase : "moved",
|
|
id : 1,
|
|
x : ${startX},
|
|
y : ${startY},
|
|
pressure : 0
|
|
}
|
|
]
|
|
},
|
|
endEvent : {
|
|
inputType : "hand",
|
|
timeOffset : 0.5,
|
|
touches : [
|
|
{
|
|
inputType : "finger",
|
|
phase : "moved",
|
|
id : 1,
|
|
x : ${endX},
|
|
y : ${endY},
|
|
pressure : 0
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
};
|
|
|
|
uiController.sendEventStream(JSON.stringify(eventStream), () => uiController.uiScriptComplete());
|
|
})();`, resolve);
|
|
});
|
|
}
|