/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Mobility Components. ** ** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3 as published by the Free Software ** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ //include("product.qtx") //include("extrafunctions.qtt") //TESTED_COMPONENT=src/sensors/gestures testcase = { /* init: function() { qtuitest.checkActiveWindow = false; qtuitest.autoTerminate = false; wait(500); unlock(); wait(500); }, cleanup: function() { print("Cleanup test function"); unlock(); wait(500); Gesture.swipe(Screen.leftCenter(), Screen.rightCenter()); //close applicatin wait(500); }, */ // As a QML Application developer I need to be able to list sensor gesture plugins List_Sensor_Gestures: function() { // Test meta data testApplication = "Gesture"; testBinary = "Gesture"; // Running QML using qmlrunner will insert test app binary name when compiled testGoal = "Verify a list of all registered sensor gesture plugins"; testPreconditions = "Nil."; testGroups = "5.0"; // Test steps // mouseClick(findByProperty("label", testBinary)); wait(500); prompt(twiki("---+++ " + testApplication + "

*Goal:* " + testGoal + "
*Pre-Requisites:* " + testPreconditions + "
*Tested Binary:* " + testBinary + "
| *Step* | *Verification* | | Launch " + testBinary + " | App launches normally | | Observe the list of all gestures shown in the top menu | Verify that the expected gestures are displayed | ")); }, // As a QML Application developer I need to be able to select a sensor gesture plugin Select_Sensor_Gesture: function() { // Test meta data testApplication = "Gesture"; testBinary = "Gesture"; testGoal = "Verify selection of a sensor gesture plugin"; testPreconditions = "Nil."; testGroups = "5.0"; // Test steps // mouseClick(findByProperty("label", testBinary)); wait(500); prompt(twiki("---+++ " + testApplication + "

*Goal:* " + testGoal + "
*Pre-Requisites:* " + testPreconditions + "
*Tested Binary:* " + testBinary + "
| *Step* | *Verification* | | Launch " + testBinary + " | App launches normally | | Select the QtSensors.shake gesture from the gesture list | Verify the QtSensors.shake gesture becomes highlighted and the detection menu now has the title *QtSensors.shake* | ")); }, // As a QML Application developer I need to be able to trigger a sensor gesture plugins Trigger_Sensor_Gesture: function() { // Test meta data testApplication = "Gesture"; testBinary = "Gesture"; testGoal = "Verify that a sensor gesture is triggered"; testPreconditions = "Nil."; testGroups = "5.0"; // Test steps // mouseClick(findByProperty("label", testBinary)); wait(500); prompt(twiki("---+++ " + testApplication + "

*Goal:* " + testGoal + "
*Pre-Requisites:* " + testPreconditions + "
*Tested Binary:* " + testBinary + "
| *Step* | *Verification* | | Launch " + testBinary + " | App launches normally | | Select the QtSensors.shake gesture from the gesture list and press *start* on the detection menu | Verify that *start* button now reads *stop* and is highlighted | | Shake the phone more than 3 times in the X axis | Verify that shake detections are registered | ")); }, // Sensor gestures are not triggered by false positives Sensor_Gesture_False_Positives: function() { // Test meta data testApplication = "ShakeIt!"; testBinary = "ShakeIt!"; testGoal = "Verify that a sensor gesture doesn't trigger falsely"; testPreconditions = "Nil."; testGroups = "5.0"; // Test steps // mouseClick(findByProperty("label", testBinary)); wait(500); prompt(twiki("---+++ " + testApplication + "

*Goal:* " + testGoal + "
*Pre-Requisites:* " + testPreconditions + "
*Tested Binary:* " + testBinary + "
| *Step* | *Verification* | | Launch " + testBinary + " | App launches normally | | | The display shows* Shake to rotate the triangles* and three tringles are below that | | Perform the *Shake* gesture | Verify that *Shake* is displayed and the triangles rotate | | | Verify no other gestures register at the same time | | Wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | | Perform the *Slam* gesture | Verify that *Slam* is displayed and the triangles move out from the center of the display | | | Verify no other gestures register at the same time | | Wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | | Perform the *Whip* gesture | Verify that the *Whip* is displayed | | | Verify no other gestures register at the same time | | Wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | | Perform the *Hover* gesture | Verify that the *hover* is displayed and the triangles move to the top of the display | | | Verify no other gestures register at the same time | | Wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | | Perform the *Cover* gesture | Verify that the *Cover* is displayed and the triangles go to the bottom of the display | | | Verify no other gestures register at the same time | | Wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | | Perform the *Twist Left* gesture | Verify that the *TwistLeft* is displayed and the triangles move to the left | | | Verify no other gestures register at the same time | | Wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | | Perform the *Twist Right* gesture | Verify that the *TwistRight* is displayed and the triangles move to the right | | | Verify no other gestures register at the same time | | Wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | | Perform the *Pickup* gesture | Verify that the *Pickup* is displayed | | | Verify no other gestures register at the same time | | Wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | | Perform the *Turnover* gesture | Verify that the turnover chime is played | | Turn over and wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | | Perform the *Double Tap* gesture | Verify that the *Double Tap* is displayed | | | Verify no other gestures register at the same time | | Wait for 3 seconds while observing the display | Verify the display now reads *Try another gesture* and the triangles return to the center of the display | ")); }, }