stktest: Add GetInput test sequence 1.6
[platform/upstream/ofono.git] / tools / stktest.c
index 3f031c6..a71eaf7 100644 (file)
@@ -281,7 +281,9 @@ static DBusMessage *func(DBusConnection *conn, DBusMessage *msg,    \
        func = test->agent_func;                                        \
                                                                        \
        if (strcmp(test->method, method_name)) {                        \
-               g_printerr("Wrong method called!\n");                   \
+               g_printerr("Wrong method called!"                       \
+                               "  Expected: %s, Got: %s\n",            \
+                               test->method, method_name);             \
                __stktest_test_finish(FALSE);                           \
                return stktest_error_failed(msg);                       \
        }                                                               \
@@ -334,7 +336,9 @@ static DBusMessage *func(DBusConnection *conn, DBusMessage *msg,    \
        func = test->agent_func;                                        \
                                                                        \
        if (strcmp(test->method, method_name)) {                        \
-               g_printerr("Wrong method called!\n");                   \
+               g_printerr("Wrong method called!"                       \
+                               "  Expected: %s, Got: %s\n",            \
+                               test->method, method_name);             \
                __stktest_test_finish(FALSE);                           \
                return stktest_error_failed(msg);                       \
        }                                                               \
@@ -2162,6 +2166,128 @@ static DBusMessage *test_get_inkey_131(DBusMessage *msg,
        return reply;
 }
 
+static DBusMessage *test_get_input_11(DBusMessage *msg,
+                                       const char *alpha,
+                                       unsigned char icon_id,
+                                       const char *def_input,
+                                       unsigned char min, unsigned char max,
+                                       gboolean hide_typing)
+{
+       DBusMessage *reply;
+       const char *ret = "12345";
+
+       STKTEST_AGENT_ASSERT(g_str_equal(alpha, "Enter 12345"));
+       STKTEST_AGENT_ASSERT(icon_id == 0);
+       STKTEST_AGENT_ASSERT(g_str_equal(def_input, ""));
+       STKTEST_AGENT_ASSERT(min == 5);
+       STKTEST_AGENT_ASSERT(max == 5);
+       STKTEST_AGENT_ASSERT(hide_typing == FALSE);
+
+       reply = dbus_message_new_method_return(msg);
+       dbus_message_append_args(reply, DBUS_TYPE_STRING, &ret,
+                                       DBUS_TYPE_INVALID);
+
+       return reply;
+}
+
+static DBusMessage *test_get_input_12(DBusMessage *msg,
+                                       const char *alpha,
+                                       unsigned char icon_id,
+                                       const char *def_input,
+                                       unsigned char min, unsigned char max,
+                                       gboolean hide_typing)
+{
+       DBusMessage *reply;
+       const char *ret = "67*#+";
+
+       STKTEST_AGENT_ASSERT(g_str_equal(alpha, "Enter 67*#+"));
+       STKTEST_AGENT_ASSERT(icon_id == 0);
+       STKTEST_AGENT_ASSERT(g_str_equal(def_input, ""));
+       STKTEST_AGENT_ASSERT(min == 5);
+       STKTEST_AGENT_ASSERT(max == 5);
+       STKTEST_AGENT_ASSERT(hide_typing == FALSE);
+
+       reply = dbus_message_new_method_return(msg);
+       dbus_message_append_args(reply, DBUS_TYPE_STRING, &ret,
+                                       DBUS_TYPE_INVALID);
+
+       return reply;
+}
+
+static DBusMessage *test_get_input_13(DBusMessage *msg,
+                                       const char *alpha,
+                                       unsigned char icon_id,
+                                       const char *def_input,
+                                       unsigned char min, unsigned char max,
+                                       gboolean hide_typing)
+{
+       DBusMessage *reply;
+       const char *ret = "AbCdE";
+
+       STKTEST_AGENT_ASSERT(g_str_equal(alpha, "Enter AbCdE"));
+       STKTEST_AGENT_ASSERT(icon_id == 0);
+       STKTEST_AGENT_ASSERT(g_str_equal(def_input, ""));
+       STKTEST_AGENT_ASSERT(min == 5);
+       STKTEST_AGENT_ASSERT(max == 5);
+       STKTEST_AGENT_ASSERT(hide_typing == FALSE);
+
+       reply = dbus_message_new_method_return(msg);
+       dbus_message_append_args(reply, DBUS_TYPE_STRING, &ret,
+                                       DBUS_TYPE_INVALID);
+
+       return reply;
+}
+
+static DBusMessage *test_get_input_14(DBusMessage *msg,
+                                       const char *alpha,
+                                       unsigned char icon_id,
+                                       const char *def_input,
+                                       unsigned char min, unsigned char max,
+                                       gboolean hide_typing)
+{
+       DBusMessage *reply;
+       const char *ret = "2345678";
+
+       STKTEST_AGENT_ASSERT(g_str_equal(alpha,
+                                       "Password 1<SEND>2345678"));
+       STKTEST_AGENT_ASSERT(icon_id == 0);
+       STKTEST_AGENT_ASSERT(g_str_equal(def_input, ""));
+       STKTEST_AGENT_ASSERT(min == 4);
+       STKTEST_AGENT_ASSERT(max == 8);
+       STKTEST_AGENT_ASSERT(hide_typing == TRUE);
+
+       reply = dbus_message_new_method_return(msg);
+       dbus_message_append_args(reply, DBUS_TYPE_STRING, &ret,
+                                       DBUS_TYPE_INVALID);
+
+       return reply;
+}
+
+static DBusMessage *test_get_input_15(DBusMessage *msg,
+                                       const char *alpha,
+                                       unsigned char icon_id,
+                                       const char *def_input,
+                                       unsigned char min, unsigned char max,
+                                       gboolean hide_typing)
+{
+       DBusMessage *reply;
+       const char *ret = "12345678901234567890";
+
+       STKTEST_AGENT_ASSERT(g_str_equal(alpha,
+                                       "Enter 1..9,0..9,0(1)"));
+       STKTEST_AGENT_ASSERT(icon_id == 0);
+       STKTEST_AGENT_ASSERT(g_str_equal(def_input, ""));
+       STKTEST_AGENT_ASSERT(min == 1);
+       STKTEST_AGENT_ASSERT(max == 20);
+       STKTEST_AGENT_ASSERT(hide_typing == FALSE);
+
+       reply = dbus_message_new_method_return(msg);
+       dbus_message_append_args(reply, DBUS_TYPE_STRING, &ret,
+                                       DBUS_TYPE_INVALID);
+
+       return reply;
+}
+
 static void power_down_reply(DBusPendingCall *call, void *user_data)
 {
        __stktest_test_next();
@@ -2606,6 +2732,36 @@ static void __stktest_test_init(void)
                                sizeof(get_inkey_response_1311),
                                test_get_inkey_131,
                                expect_response_and_finish);
+       stktest_add_test("Get Input 1.1", "RequestDigits",
+                               get_input_111, sizeof(get_input_111),
+                               get_input_response_111,
+                               sizeof(get_input_response_111),
+                               test_get_input_11,
+                               expect_response_and_finish);
+       stktest_add_test("Get Input 1.2", "RequestDigits",
+                               get_input_121, sizeof(get_input_121),
+                               get_input_response_121,
+                               sizeof(get_input_response_121),
+                               test_get_input_12,
+                               expect_response_and_finish);
+       stktest_add_test("Get Input 1.3", "RequestInput",
+                               get_input_131, sizeof(get_input_131),
+                               get_input_response_131,
+                               sizeof(get_input_response_131),
+                               test_get_input_13,
+                               expect_response_and_finish);
+       stktest_add_test("Get Input 1.4", "RequestDigits",
+                               get_input_141, sizeof(get_input_141),
+                               get_input_response_141,
+                               sizeof(get_input_response_141),
+                               test_get_input_14,
+                               expect_response_and_finish);
+       stktest_add_test("Get Input 1.5", "RequestDigits",
+                               get_input_151, sizeof(get_input_151),
+                               get_input_response_151,
+                               sizeof(get_input_response_151),
+                               test_get_input_15,
+                               expect_response_and_finish);
 }
 
 static void test_destroy(gpointer user_data)