/ tst_status_button.qml
tst_status_button.qml
 1  import QtQuick 2.14
 2  import QtQuick.Window 2.14
 3  import QtTest 1.14
 4  
 5  import "base"
 6  import StatusQ.Controls 0.1
 7  import StatusQ.Popups 0.1
 8  
 9  WindowTestCase {
10      name: "statusButton test"
11      when: windowShown
12  
13  
14      SignalSpy {
15          id: statusButtonClickedSpy
16          target: statusButton
17          signalName: "clicked"
18      }
19  
20      SignalSpy {
21          id: statusButtonReleasedSpy
22          target: statusButton
23          signalName: "released"
24      }
25  
26      SignalSpy {
27          id: statusButtonPressedSpy
28          target: statusButton
29          signalName: "pressed"
30      }
31  
32      SignalSpy {
33          id: statusButtonPressedAndHoldSpy
34          target: statusButton
35          signalName: "pressAndHold"
36      }
37  
38      StatusButton {
39          id: statusButton
40          parent: windowContent
41          text: "Status Button"      
42      }
43  
44      function test_case1_statusButton_signals_valid() {
45  
46          // checking if signals are present
47  
48          verify(statusButtonClickedSpy.valid, "Signal " + statusButtonClickedSpy.signalName + "is not found")
49          verify(statusButtonPressedSpy.valid, "Signal " + statusButtonPressedSpy.signalName + "is not found")
50          verify(statusButtonPressedAndHoldSpy.valid, "Signal " + statusButtonPressedAndHoldSpy.signalName + "is not found")
51          verify(statusButtonReleasedSpy.valid, "Signal " + statusButtonReleasedSpy.signalName + "is not found")
52      }
53  
54  
55      function test_case2_statusButton_clicked() {
56          compare(statusButtonClickedSpy.count, 0)
57          mouseClick(statusButton, 1, 1, Qt.LeftButton)
58          compare(statusButtonClickedSpy.count, 1, "Status Button was not clicked")
59          mouseRelease(statusButton, 1, 1, Qt.LeftButton)
60      }
61  
62      function test_case3_statusButton_pressed() {
63          statusButtonPressedSpy.clear()
64          compare(statusButtonPressedSpy.count, 0)
65          mousePress(statusButton, 5, 5, Qt.LeftButton)
66          compare(statusButtonPressedSpy.count, 1, "Status Button was not pressed")
67  
68      }
69  
70      function test_case4_statusButton_pressedAndHold() {      
71          statusButtonPressedAndHoldSpy.clear()
72          compare(statusButtonPressedAndHoldSpy.count, 0)
73          mousePress(statusButton, 5, 5, Qt.LeftButton, Qt.NoModifier, 1000)
74          compare(statusButtonPressedAndHoldSpy.count, 1, "Status Button was not pressed and held")
75      }
76  
77  
78      function test_case5_statusButton_released() {
79          statusButtonReleasedSpy.clear()
80          mousePress(statusButton, 5, 5, Qt.LeftButton, Qt.NoModifier, 1000)
81          mouseRelease(statusButton, 5, 5, Qt.LeftButton)
82          compare(statusButtonReleasedSpy.count, 1, "Status Button was not released")
83     }
84  }