summaryrefslogtreecommitdiff
path: root/ivi-layermanagement-api/test/ilm_input_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ivi-layermanagement-api/test/ilm_input_test.cpp')
-rw-r--r--ivi-layermanagement-api/test/ilm_input_test.cpp26
1 files changed, 19 insertions, 7 deletions
diff --git a/ivi-layermanagement-api/test/ilm_input_test.cpp b/ivi-layermanagement-api/test/ilm_input_test.cpp
index 032a7e3..2edb301 100644
--- a/ivi-layermanagement-api/test/ilm_input_test.cpp
+++ b/ivi-layermanagement-api/test/ilm_input_test.cpp
@@ -96,6 +96,13 @@ TEST_F(IlmInputTest, ilm_input_focus) {
ilmInputDevice *bitmasks;
t_ilm_uint num_ids;
t_ilm_uint layer = 0xbeef;
+ t_ilm_string set_seats = NULL;
+
+ /*ilm_set/get_input_focus test only work if default seat is avaiable*/
+ if (ilm_getDefaultSeat(&set_seats) == ILM_FAILED) {
+ GTEST_SKIP() << "Skipping input focus, there isn't a default seat";
+ }
+ free(set_seats);
/* We have to add surfaces to a layer. Otherwise, they would not have a view.
We need a view to be able to set pointer focus. */
@@ -120,7 +127,6 @@ TEST_F(IlmInputTest, ilm_input_focus) {
/* Can set all focus to keyboard */
ASSERT_EQ(ILM_SUCCESS, ilm_setInputFocus(&surfaces[0], surfaceCount, ILM_INPUT_DEVICE_KEYBOARD, ILM_TRUE));
-
ASSERT_EQ(ILM_SUCCESS, ilm_getInputFocus(&surfaceIDs, &bitmasks, &num_ids));
for (unsigned int i = 0; i < num_ids; i++) {
/* All surfaces now have keyboard focus */
@@ -174,16 +180,20 @@ TEST_F(IlmInputTest, ilm_input_event_acceptance) {
t_ilm_surface surface1 = iviSurfaces[0].surface_id;
t_ilm_uint num_seats = 0;
t_ilm_string *seats = NULL;
- char const *set_seats = "default";
+ t_ilm_string set_seats = NULL;
t_ilm_uint set_seats_count = 1;
+ /*ilm_input_event_acceptance test only work if default seat is available*/
+ if (ilm_getDefaultSeat(&set_seats) == ILM_FAILED) {
+ GTEST_SKIP() << "Skipping input event acceptace, there isn't a default seat";
+ }
/* All seats accept the "default" seat when created */
ASSERT_EQ(ILM_SUCCESS, ilm_getInputAcceptanceOn(surface1, &num_seats,
&seats));
EXPECT_EQ(1, num_seats);
/* googletest doesn't like comparing to null pointers */
ASSERT_FALSE(seats == NULL);
- EXPECT_STREQ("default", seats[0]);
+ EXPECT_STREQ(set_seats, seats[0]);
free(seats[0]);
free(seats);
@@ -196,12 +206,12 @@ TEST_F(IlmInputTest, ilm_input_event_acceptance) {
/* Can add a seat to acceptance */
ASSERT_EQ(ILM_SUCCESS, ilm_setInputAcceptanceOn(surface1, set_seats_count,
- (t_ilm_string*)&set_seats));
+ &set_seats));
ASSERT_EQ(ILM_SUCCESS, ilm_getInputAcceptanceOn(surface1, &num_seats,
&seats));
EXPECT_EQ(set_seats_count, num_seats);
bool found = false;
- if (!strcmp(*seats, (t_ilm_string)set_seats))
+ if (!strcmp(*seats, set_seats))
found = true;
EXPECT_EQ(true, found) << set_seats[0] << " not found in returned seats";
@@ -209,7 +219,9 @@ TEST_F(IlmInputTest, ilm_input_event_acceptance) {
free(seats);
/* Seats can be set, unset, then reset */
- ASSERT_EQ(ILM_SUCCESS, ilm_setInputAcceptanceOn(surface1, 1, (t_ilm_string*)&set_seats));
+ ASSERT_EQ(ILM_SUCCESS, ilm_setInputAcceptanceOn(surface1, 1, &set_seats));
ASSERT_EQ(ILM_SUCCESS, ilm_setInputAcceptanceOn(surface1, 0, NULL));
- ASSERT_EQ(ILM_SUCCESS, ilm_setInputAcceptanceOn(surface1, 1, (t_ilm_string*)&set_seats));
+ ASSERT_EQ(ILM_SUCCESS, ilm_setInputAcceptanceOn(surface1, 1, &set_seats));
+
+ free(set_seats);
}