summaryrefslogtreecommitdiff
path: root/src/immediate_interpreter_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/immediate_interpreter_unittest.cc')
-rw-r--r--src/immediate_interpreter_unittest.cc23
1 files changed, 22 insertions, 1 deletions
diff --git a/src/immediate_interpreter_unittest.cc b/src/immediate_interpreter_unittest.cc
index 0d4b195..c7c6db2 100644
--- a/src/immediate_interpreter_unittest.cc
+++ b/src/immediate_interpreter_unittest.cc
@@ -1501,7 +1501,7 @@ TEST(ImmediateInterpreterTest, GetGesturingFingersTest) {
TestInterpreterWrapper wrapper(&ii, &hwprops);
FingerState finger_states[] = {
- // TM, Tm, WM, Wm, Press, Orientation, X, Y, TrID
+ // TM, Tm, WM, Wm, Press, Orientation, X, Y, TrID, flags
{0, 0, 0, 0, 1, 0, 61, 70, 91, 0},
{0, 0, 0, 0, 1, 0, 62, 65, 92, 0},
{0, 0, 0, 0, 1, 0, 62, 69, 93, 0},
@@ -1562,6 +1562,27 @@ TEST(ImmediateInterpreterTest, GetGesturingFingersTest) {
EXPECT_TRUE(ids.end() != ids.find(92));
}
+TEST(ImmediateInterpreterTest, GetGesturingFingersWithEmptyStateTest) {
+ ImmediateInterpreter ii(nullptr, nullptr);
+ HardwareProperties hwprops = {};
+ TestInterpreterWrapper wrapper(&ii, &hwprops);
+
+ FingerState finger_states[] = {
+ // TM, Tm, WM, Wm, Press, Orientation, X, Y, TrID, flags
+ {0, 0, 0, 0, 1, 0, 61, 70, 91, 0},
+ {0, 0, 0, 0, 1, 0, 62, 65, 92, 0},
+ {0, 0, 0, 0, 1, 0, 62, 69, 93, 0},
+ {0, 0, 0, 0, 1, 0, 62, 61, 94, 0},
+ {0, 0, 0, 0, 1, 0, 63, 80, 95, 0},
+ };
+ HardwareState five_finger_hwstate =
+ make_hwstate(200000, 0, 5, 5, &finger_states[0]);
+ HardwareState no_finger_hwstate = make_hwstate(200001, 0, 0, 0, nullptr);
+ ii.ResetSameFingersState(five_finger_hwstate);
+ ii.UpdatePointingFingers(five_finger_hwstate);
+ EXPECT_TRUE(ii.GetGesturingFingers(no_finger_hwstate).empty());
+}
+
namespace {
std::set<short> MkSet() {
return std::set<short>();