summaryrefslogtreecommitdiffstats
path: root/unit
diff options
context:
space:
mode:
authorYang Gu <yang.gu@intel.com>2010-05-13 18:48:21 +0800
committerDenis Kenzior <denkenz@gmail.com>2010-05-13 11:09:43 -0500
commita431bf4ffc6855382e29ad9535b3b55687f99d7a (patch)
treed529bcd87805d55aec91039fa7a179fa6267c9df /unit
parentd45219e049eb60e095abf262142d98f90368bf8b (diff)
downloadofono-a431bf4ffc6855382e29ad9535b3b55687f99d7a.tar.bz2
test-stkutil: Add test for setup menu parser
Diffstat (limited to 'unit')
-rw-r--r--unit/test-stkutil.c1616
1 files changed, 1616 insertions, 0 deletions
diff --git a/unit/test-stkutil.c b/unit/test-stkutil.c
index 4cce0f59..dc331838 100644
--- a/unit/test-stkutil.c
+++ b/unit/test-stkutil.c
@@ -35,6 +35,8 @@
#include "smsutil.h"
#include "stkutil.h"
+#define MAX_ITEM 100
+
static gboolean g_mem_equal(const unsigned char *v1, const unsigned char *v2,
unsigned int len)
{
@@ -77,6 +79,28 @@ static void check_duration(const struct stk_duration *command,
g_assert(command->interval == test->interval);
}
+/* Defined in TS 102.223 Section 8.9 */
+static void check_item(const struct stk_item *command,
+ const struct stk_item *test)
+{
+ g_assert(command->id == test->id);
+ g_assert(g_str_equal(command->text, test->text));
+}
+
+static void check_items(GSList *command, const struct stk_item *test)
+{
+ struct stk_item *si;
+ GSList *l;
+ unsigned int i = 0;
+
+ for (l = command; l; l = l->next) {
+ si = l->data;
+ check_item(si, &test[i++]);
+ }
+
+ g_assert(test[i].id == 0);
+}
+
/* Defined in TS 102.223 Section 8.11 */
static void check_response_length(const struct stk_response_length *command,
const struct stk_response_length *test)
@@ -85,6 +109,15 @@ static void check_response_length(const struct stk_response_length *command,
g_assert(command->max == test->max);
}
+/* Defined in TS 102.223 Section 8.24 */
+static void check_items_next_action_indicator(
+ const struct stk_items_next_action_indicator *command,
+ const struct stk_items_next_action_indicator *test)
+{
+ g_assert(command->len == test->len);
+ g_assert(g_mem_equal(command->list, test->list, test->len));
+}
+
/* Defined in TS 102.223 Section 8.31 */
static void check_icon_id(const struct stk_icon_id *command,
const struct stk_icon_id *test)
@@ -93,6 +126,15 @@ static void check_icon_id(const struct stk_icon_id *command,
g_assert(command->qualifier == test->qualifier);
}
+/* Defined in TS 102.223 Section 8.32 */
+static void check_item_icon_id_list(const struct stk_item_icon_id_list *command,
+ const struct stk_item_icon_id_list *test)
+{
+ g_assert(command->qualifier == test->qualifier);
+ g_assert(command->len == test->len);
+ g_assert(g_mem_equal(command->list, test->list, test->len));
+}
+
/* Defined in TS 102.223 Section 8.72 */
static void check_text_attr(const struct stk_text_attribute *command,
const struct stk_text_attribute *test)
@@ -101,6 +143,15 @@ static void check_text_attr(const struct stk_text_attribute *command,
g_assert(g_mem_equal(command->attributes, test->attributes, test->len));
}
+/* Defined in TS 102.223 Section 8.73 */
+static void check_item_text_attribute_list(
+ const struct stk_item_text_attribute_list *command,
+ const struct stk_item_text_attribute_list *test)
+{
+ g_assert(command->len == test->len);
+ g_assert(g_mem_equal(command->list, test->list, test->len));
+}
+
/* Defined in TS 102.223 Section 8.80 */
static void check_frame_id(const struct stk_frame_id *command,
const struct stk_frame_id *test)
@@ -3926,6 +3977,1500 @@ static void test_poll_interval(gconstpointer data)
stk_command_free(command);
}
+struct setup_menu_test {
+ const unsigned char *pdu;
+ unsigned int pdu_len;
+ unsigned char qualifier;
+ char *alpha_id;
+ struct stk_item items[MAX_ITEM];
+ struct stk_items_next_action_indicator next_act;
+ struct stk_icon_id icon_id;
+ struct stk_item_icon_id_list item_icon_id_list;
+ struct stk_text_attribute text_attr;
+ struct stk_item_text_attribute_list item_text_attr_list;
+};
+
+static unsigned char setup_menu_111[] = { 0xD0, 0x3B, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0C, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x8F,
+ 0x07, 0x01, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x31, 0x8F, 0x07,
+ 0x02, 0x49, 0x74, 0x65, 0x6D,
+ 0x20, 0x32, 0x8F, 0x07, 0x03,
+ 0x49, 0x74, 0x65, 0x6D, 0x20,
+ 0x33, 0x8F, 0x07, 0x04, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x34 };
+
+static unsigned char setup_menu_112[] = { 0xD0, 0x23, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0C, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x8F,
+ 0x04, 0x11, 0x4F, 0x6E, 0x65,
+ 0x8F, 0x04, 0x12, 0x54, 0x77,
+ 0x6F };
+
+static unsigned char setup_menu_113[] = { 0xD0, 0x0D, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x00, 0x8F, 0x00 };
+
+static unsigned char setup_menu_121[] = { 0xD0, 0x81, 0xFC, 0x81, 0x03, 0x01,
+ 0x25, 0x00, 0x82, 0x02, 0x81,
+ 0x82, 0x85, 0x0A, 0x4C, 0x61,
+ 0x72, 0x67, 0x65, 0x4D, 0x65,
+ 0x6E, 0x75, 0x31, 0x8F, 0x05,
+ 0x50, 0x5A, 0x65, 0x72, 0x6F,
+ 0x8F, 0x04, 0x4F, 0x4F, 0x6E,
+ 0x65, 0x8F, 0x04, 0x4E, 0x54,
+ 0x77, 0x6F, 0x8F, 0x06, 0x4D,
+ 0x54, 0x68, 0x72, 0x65, 0x65,
+ 0x8F, 0x05, 0x4C, 0x46, 0x6F,
+ 0x75, 0x72, 0x8F, 0x05, 0x4B,
+ 0x46, 0x69, 0x76, 0x65, 0x8F,
+ 0x04, 0x4A, 0x53, 0x69, 0x78,
+ 0x8F, 0x06, 0x49, 0x53, 0x65,
+ 0x76, 0x65, 0x6E, 0x8F, 0x06,
+ 0x48, 0x45, 0x69, 0x67, 0x68,
+ 0x74, 0x8F, 0x05, 0x47, 0x4E,
+ 0x69, 0x6E, 0x65, 0x8F, 0x06,
+ 0x46, 0x41, 0x6C, 0x70, 0x68,
+ 0x61, 0x8F, 0x06, 0x45, 0x42,
+ 0x72, 0x61, 0x76, 0x6F, 0x8F,
+ 0x08, 0x44, 0x43, 0x68, 0x61,
+ 0x72, 0x6C, 0x69, 0x65, 0x8F,
+ 0x06, 0x43, 0x44, 0x65, 0x6C,
+ 0x74, 0x61, 0x8F, 0x05, 0x42,
+ 0x45, 0x63, 0x68, 0x6F, 0x8F,
+ 0x09, 0x41, 0x46, 0x6F, 0x78,
+ 0x2D, 0x74, 0x72, 0x6F, 0x74,
+ 0x8F, 0x06, 0x40, 0x42, 0x6C,
+ 0x61, 0x63, 0x6B, 0x8F, 0x06,
+ 0x3F, 0x42, 0x72, 0x6F, 0x77,
+ 0x6E, 0x8F, 0x04, 0x3E, 0x52,
+ 0x65, 0x64, 0x8F, 0x07, 0x3D,
+ 0x4F, 0x72, 0x61, 0x6E, 0x67,
+ 0x65, 0x8F, 0x07, 0x3C, 0x59,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x77,
+ 0x8F, 0x06, 0x3B, 0x47, 0x72,
+ 0x65, 0x65, 0x6E, 0x8F, 0x05,
+ 0x3A, 0x42, 0x6C, 0x75, 0x65,
+ 0x8F, 0x07, 0x39, 0x56, 0x69,
+ 0x6F, 0x6C, 0x65, 0x74, 0x8F,
+ 0x05, 0x38, 0x47, 0x72, 0x65,
+ 0x79, 0x8F, 0x06, 0x37, 0x57,
+ 0x68, 0x69, 0x74, 0x65, 0x8F,
+ 0x06, 0x36, 0x6D, 0x69, 0x6C,
+ 0x6C, 0x69, 0x8F, 0x06, 0x35,
+ 0x6D, 0x69, 0x63, 0x72, 0x6F,
+ 0x8F, 0x05, 0x34, 0x6E, 0x61,
+ 0x6E, 0x6F, 0x8F, 0x05, 0x33,
+ 0x70, 0x69, 0x63, 0x6F };
+
+static unsigned char setup_menu_122[] = { 0xD0, 0x81, 0xF3, 0x81, 0x03, 0x01,
+ 0x25, 0x00, 0x82, 0x02, 0x81,
+ 0x82, 0x85, 0x0A, 0x4C, 0x61,
+ 0x72, 0x67, 0x65, 0x4D, 0x65,
+ 0x6E, 0x75, 0x32, 0x8F, 0x1D,
+ 0xFF, 0x31, 0x20, 0x43, 0x61,
+ 0x6C, 0x6C, 0x20, 0x46, 0x6F,
+ 0x72, 0x77, 0x61, 0x72, 0x64,
+ 0x20, 0x55, 0x6E, 0x63, 0x6F,
+ 0x6E, 0x64, 0x69, 0x74, 0x69,
+ 0x6F, 0x6E, 0x61, 0x6C, 0x8F,
+ 0x1C, 0xFE, 0x32, 0x20, 0x43,
+ 0x61, 0x6C, 0x6C, 0x20, 0x46,
+ 0x6F, 0x72, 0x77, 0x61, 0x72,
+ 0x64, 0x20, 0x4F, 0x6E, 0x20,
+ 0x55, 0x73, 0x65, 0x72, 0x20,
+ 0x42, 0x75, 0x73, 0x79, 0x8F,
+ 0x1B, 0xFD, 0x33, 0x20, 0x43,
+ 0x61, 0x6C, 0x6C, 0x20, 0x46,
+ 0x6F, 0x72, 0x77, 0x61, 0x72,
+ 0x64, 0x20, 0x4F, 0x6E, 0x20,
+ 0x4E, 0x6F, 0x20, 0x52, 0x65,
+ 0x70, 0x6C, 0x79, 0x8F, 0x25,
+ 0xFC, 0x34, 0x20, 0x43, 0x61,
+ 0x6C, 0x6C, 0x20, 0x46, 0x6F,
+ 0x72, 0x77, 0x61, 0x72, 0x64,
+ 0x20, 0x4F, 0x6E, 0x20, 0x55,
+ 0x73, 0x65, 0x72, 0x20, 0x4E,
+ 0x6F, 0x74, 0x20, 0x52, 0x65,
+ 0x61, 0x63, 0x68, 0x61, 0x62,
+ 0x6C, 0x65, 0x8F, 0x20, 0xFB,
+ 0x35, 0x20, 0x42, 0x61, 0x72,
+ 0x72, 0x69, 0x6E, 0x67, 0x20,
+ 0x4F, 0x66, 0x20, 0x41, 0x6C,
+ 0x6C, 0x20, 0x4F, 0x75, 0x74,
+ 0x67, 0x6F, 0x69, 0x6E, 0x67,
+ 0x20, 0x43, 0x61, 0x6C, 0x6C,
+ 0x73, 0x8F, 0x24, 0xFA, 0x36,
+ 0x20, 0x42, 0x61, 0x72, 0x72,
+ 0x69, 0x6E, 0x67, 0x20, 0x4F,
+ 0x66, 0x20, 0x41, 0x6C, 0x6C,
+ 0x20, 0x4F, 0x75, 0x74, 0x67,
+ 0x6F, 0x69, 0x6E, 0x67, 0x20,
+ 0x49, 0x6E, 0x74, 0x20, 0x43,
+ 0x61, 0x6C, 0x6C, 0x73, 0x8F,
+ 0x13, 0xF9, 0x37, 0x20, 0x43,
+ 0x4C, 0x49, 0x20, 0x50, 0x72,
+ 0x65, 0x73, 0x65, 0x6E, 0x74,
+ 0x61, 0x74, 0x69, 0x6F, 0x6E };
+
+static unsigned char setup_menu_123[] = { 0xD0, 0x81, 0xFC, 0x81, 0x03, 0x01,
+ 0x25, 0x00, 0x82, 0x02, 0x81,
+ 0x82, 0x85, 0x81, 0xEC, 0x54,
+ 0x68, 0x65, 0x20, 0x53, 0x49,
+ 0x4D, 0x20, 0x73, 0x68, 0x61,
+ 0x6C, 0x6C, 0x20, 0x73, 0x75,
+ 0x70, 0x70, 0x6C, 0x79, 0x20,
+ 0x61, 0x20, 0x73, 0x65, 0x74,
+ 0x20, 0x6F, 0x66, 0x20, 0x6D,
+ 0x65, 0x6E, 0x75, 0x20, 0x69,
+ 0x74, 0x65, 0x6D, 0x73, 0x2C,
+ 0x20, 0x77, 0x68, 0x69, 0x63,
+ 0x68, 0x20, 0x73, 0x68, 0x61,
+ 0x6C, 0x6C, 0x20, 0x62, 0x65,
+ 0x20, 0x69, 0x6E, 0x74, 0x65,
+ 0x67, 0x72, 0x61, 0x74, 0x65,
+ 0x64, 0x20, 0x77, 0x69, 0x74,
+ 0x68, 0x20, 0x74, 0x68, 0x65,
+ 0x20, 0x6D, 0x65, 0x6E, 0x75,
+ 0x20, 0x73, 0x79, 0x73, 0x74,
+ 0x65, 0x6D, 0x20, 0x28, 0x6F,
+ 0x72, 0x20, 0x6F, 0x74, 0x68,
+ 0x65, 0x72, 0x20, 0x4D, 0x4D,
+ 0x49, 0x20, 0x66, 0x61, 0x63,
+ 0x69, 0x6C, 0x69, 0x74, 0x79,
+ 0x29, 0x20, 0x69, 0x6E, 0x20,
+ 0x6F, 0x72, 0x64, 0x65, 0x72,
+ 0x20, 0x74, 0x6F, 0x20, 0x67,
+ 0x69, 0x76, 0x65, 0x20, 0x74,
+ 0x68, 0x65, 0x20, 0x75, 0x73,
+ 0x65, 0x72, 0x20, 0x74, 0x68,
+ 0x65, 0x20, 0x6F, 0x70, 0x70,
+ 0x6F, 0x72, 0x74, 0x75, 0x6E,
+ 0x69, 0x74, 0x79, 0x20, 0x74,
+ 0x6F, 0x20, 0x63, 0x68, 0x6F,
+ 0x6F, 0x73, 0x65, 0x20, 0x6F,
+ 0x6E, 0x65, 0x20, 0x6F, 0x66,
+ 0x20, 0x74, 0x68, 0x65, 0x73,
+ 0x65, 0x20, 0x6D, 0x65, 0x6E,
+ 0x75, 0x20, 0x69, 0x74, 0x65,
+ 0x6D, 0x73, 0x20, 0x61, 0x74,
+ 0x20, 0x68, 0x69, 0x73, 0x20,
+ 0x6F, 0x77, 0x6E, 0x20, 0x64,
+ 0x69, 0x73, 0x63, 0x72, 0x65,
+ 0x74, 0x69, 0x6F, 0x6E, 0x2E,
+ 0x20, 0x45, 0x61, 0x63, 0x68,
+ 0x20, 0x69, 0x74, 0x65, 0x6D,
+ 0x20, 0x63, 0x6F, 0x6D, 0x70,
+ 0x72, 0x69, 0x73, 0x65, 0x73,
+ 0x20, 0x61, 0x20, 0x73, 0x68,
+ 0x8F, 0x02, 0x01, 0x59 };
+
+static unsigned char setup_menu_211[] = { 0xD0, 0x3B, 0x81, 0x03, 0x01, 0x25,
+ 0x80, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0C, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x8F,
+ 0x07, 0x01, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x31, 0x8F, 0x07,
+ 0x02, 0x49, 0x74, 0x65, 0x6D,
+ 0x20, 0x32, 0x8F, 0x07, 0x03,
+ 0x49, 0x74, 0x65, 0x6D, 0x20,
+ 0x33, 0x8F, 0x07, 0x04, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x34 };
+
+static unsigned char setup_menu_311[] = { 0xD0, 0x41, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0C, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x8F,
+ 0x07, 0x01, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x31, 0x8F, 0x07,
+ 0x02, 0x49, 0x74, 0x65, 0x6D,
+ 0x20, 0x32, 0x8F, 0x07, 0x03,
+ 0x49, 0x74, 0x65, 0x6D, 0x20,
+ 0x33, 0x8F, 0x07, 0x04, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x34,
+ 0x18, 0x04, 0x13, 0x10, 0x15,
+ 0x26 };
+
+static unsigned char setup_menu_411[] = { 0xD0, 0x3C, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0C, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x8F,
+ 0x07, 0x01, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x31, 0x8F, 0x07,
+ 0x02, 0x49, 0x74, 0x65, 0x6D,
+ 0x20, 0x32, 0x8F, 0x07, 0x03,
+ 0x49, 0x74, 0x65, 0x6D, 0x20,
+ 0x33, 0x9E, 0x02, 0x01, 0x01,
+ 0x9F, 0x04, 0x01, 0x05, 0x05,
+ 0x05 };
+
+static unsigned char setup_menu_421[] = { 0xD0, 0x3C, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0C, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x8F,
+ 0x07, 0x01, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x31, 0x8F, 0x07,
+ 0x02, 0x49, 0x74, 0x65, 0x6D,
+ 0x20, 0x32, 0x8F, 0x07, 0x03,
+ 0x49, 0x74, 0x65, 0x6D, 0x20,
+ 0x33, 0x9E, 0x02, 0x00, 0x01,
+ 0x9F, 0x04, 0x00, 0x05, 0x05,
+ 0x05 };
+
+static unsigned char setup_menu_511[] = { 0xD0, 0x29, 0x81, 0x03, 0x01, 0x25,
+ 0x01, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0C, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x8F,
+ 0x07, 0x01, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x31, 0x8F, 0x07,
+ 0x02, 0x49, 0x74, 0x65, 0x6D,
+ 0x20, 0x32 };
+
+static unsigned char setup_menu_611[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x31, 0x8F, 0x07, 0x01, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x31,
+ 0x8F, 0x07, 0x02, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x32, 0x8F,
+ 0x07, 0x03, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x33, 0xD0, 0x04,
+ 0x00, 0x0E, 0x00, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x00, 0xB4,
+ 0x00, 0x06, 0x00, 0xB4, 0x00,
+ 0x06, 0x00, 0xB4 };
+
+static unsigned char setup_menu_612[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x32, 0x8F, 0x07, 0x04, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x34,
+ 0x8F, 0x07, 0x05, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x35, 0x8F,
+ 0x07, 0x06, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x36 };
+
+static unsigned char setup_menu_621[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x31, 0x8F, 0x07, 0x01, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x31,
+ 0x8F, 0x07, 0x02, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x32, 0x8F,
+ 0x07, 0x03, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x33, 0xD0, 0x04,
+ 0x00, 0x0E, 0x01, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x01, 0xB4,
+ 0x00, 0x06, 0x01, 0xB4, 0x00,
+ 0x06, 0x01, 0xB4 };
+
+static unsigned char setup_menu_622[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x32, 0x8F, 0x07, 0x04, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x34,
+ 0x8F, 0x07, 0x05, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x35, 0x8F,
+ 0x07, 0x06, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x36 };
+
+static unsigned char setup_menu_631[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x31, 0x8F, 0x07, 0x01, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x31,
+ 0x8F, 0x07, 0x02, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x32, 0x8F,
+ 0x07, 0x03, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x33, 0xD0, 0x04,
+ 0x00, 0x0E, 0x02, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x02, 0xB4,
+ 0x00, 0x06, 0x02, 0xB4, 0x00,
+ 0x06, 0x02, 0xB4 };
+
+static unsigned char setup_menu_632[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x32, 0x8F, 0x07, 0x04, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x34,
+ 0x8F, 0x07, 0x05, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x35, 0x8F,
+ 0x07, 0x06, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x36 };
+
+static unsigned char setup_menu_641[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x31, 0x8F, 0x07, 0x01, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x31,
+ 0x8F, 0x07, 0x02, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x32, 0x8F,
+ 0x07, 0x03, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x33, 0xD0, 0x04,
+ 0x00, 0x0E, 0x04, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x04, 0xB4,
+ 0x00, 0x06, 0x04, 0xB4, 0x00,
+ 0x06, 0x04, 0xB4 };
+
+static unsigned char setup_menu_642[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x32, 0x8F, 0x07, 0x04, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x34,
+ 0x8F, 0x07, 0x05, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x35, 0x8F,
+ 0x07, 0x06, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x36, 0xD0, 0x04,
+ 0x00, 0x0E, 0x00, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x00, 0xB4,
+ 0x00, 0x06, 0x00, 0xB4, 0x00,
+ 0x06, 0x00, 0xB4 };
+
+static unsigned char setup_menu_643[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x33, 0x8F, 0x07, 0x07, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x37,
+ 0x8F, 0x07, 0x08, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x38, 0x8F,
+ 0x07, 0x09, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x39 };
+
+static unsigned char setup_menu_651[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x31, 0x8F, 0x07, 0x01, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x31,
+ 0x8F, 0x07, 0x02, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x32, 0x8F,
+ 0x07, 0x03, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x33, 0xD0, 0x04,
+ 0x00, 0x0E, 0x08, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x08, 0xB4,
+ 0x00, 0x06, 0x08, 0xB4, 0x00,
+ 0x06, 0x08, 0xB4 };
+
+static unsigned char setup_menu_661[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x31, 0x8F, 0x07, 0x01, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x31,
+ 0x8F, 0x07, 0x02, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x32, 0x8F,
+ 0x07, 0x03, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x33, 0xD0, 0x04,
+ 0x00, 0x0E, 0x10, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x10, 0xB4,
+ 0x00, 0x06, 0x10, 0xB4, 0x00,
+ 0x06, 0x10, 0xB4 };
+
+static unsigned char setup_menu_671[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x31, 0x8F, 0x07, 0x01, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x31,
+ 0x8F, 0x07, 0x02, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x32, 0x8F,
+ 0x07, 0x03, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x33, 0xD0, 0x04,
+ 0x00, 0x0E, 0x20, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x20, 0xB4,
+ 0x00, 0x06, 0x20, 0xB4, 0x00,
+ 0x06, 0x20, 0xB4 };
+
+static unsigned char setup_menu_681[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x31, 0x8F, 0x07, 0x01, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x31,
+ 0x8F, 0x07, 0x02, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x32, 0x8F,
+ 0x07, 0x03, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x33, 0xD0, 0x04,
+ 0x00, 0x0E, 0x40, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x40, 0xB4,
+ 0x00, 0x06, 0x40, 0xB4, 0x00,
+ 0x06, 0x40, 0xB4 };
+
+static unsigned char setup_menu_691[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0E, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x20,
+ 0x31, 0x8F, 0x07, 0x01, 0x49,
+ 0x74, 0x65, 0x6D, 0x20, 0x31,
+ 0x8F, 0x07, 0x02, 0x49, 0x74,
+ 0x65, 0x6D, 0x20, 0x32, 0x8F,
+ 0x07, 0x03, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x33, 0xD0, 0x04,
+ 0x00, 0x0E, 0x80, 0xB4, 0xD1,
+ 0x0C, 0x00, 0x06, 0x80, 0xB4,
+ 0x00, 0x06, 0x80, 0xB4, 0x00,
+ 0x06, 0x80, 0xB4 };
+
+static unsigned char setup_menu_6101[] = { 0xD0, 0x46, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x0C, 0x54, 0x6F, 0x6F,
+ 0x6C, 0x6B, 0x69, 0x74, 0x20,
+ 0x4D, 0x65, 0x6E, 0x75, 0x8F,
+ 0x07, 0x01, 0x49, 0x74, 0x65,
+ 0x6D, 0x20, 0x31, 0x8F, 0x07,
+ 0x02, 0x49, 0x74, 0x65, 0x6D,
+ 0x20, 0x32, 0x8F, 0x07, 0x03,
+ 0x49, 0x74, 0x65, 0x6D, 0x20,
+ 0x33, 0xD0, 0x04, 0x00, 0x0C,
+ 0x00, 0xB4, 0xD1, 0x0C, 0x00,
+ 0x06, 0x00, 0xB4, 0x00, 0x06,
+ 0x00, 0xB4, 0x00, 0x06, 0x00,
+ 0xB4 };
+
+static unsigned char setup_menu_711[] = { 0xD0, 0x81, 0x9C, 0x81, 0x03, 0x01,
+ 0x25, 0x00, 0x82, 0x02, 0x81,
+ 0x82, 0x85, 0x19, 0x80, 0x04,
+ 0x17, 0x04, 0x14, 0x04, 0x20,
+ 0x04, 0x10, 0x04, 0x12, 0x04,
+ 0x21, 0x04, 0x22, 0x04, 0x12,
+ 0x04, 0x23, 0x04, 0x19, 0x04,
+ 0x22, 0x04, 0x15, 0x8F, 0x1C,
+ 0x01, 0x80, 0x04, 0x17, 0x04,
+ 0x14, 0x04, 0x20, 0x04, 0x10,
+ 0x04, 0x12, 0x04, 0x21, 0x04,
+ 0x22, 0x04, 0x12, 0x04, 0x23,
+ 0x04, 0x19, 0x04, 0x22, 0x04,
+ 0x15, 0x00, 0x31, 0x8F, 0x1C,
+ 0x02, 0x80, 0x04, 0x17, 0x04,
+ 0x14, 0x04, 0x20, 0x04, 0x10,
+ 0x04, 0x12, 0x04, 0x21, 0x04,
+ 0x22, 0x04, 0x12, 0x04, 0x23,
+ 0x04, 0x19, 0x04, 0x22, 0x04,
+ 0x15, 0x00, 0x32, 0x8F, 0x1C,
+ 0x03, 0x80, 0x04, 0x17, 0x04,
+ 0x14, 0x04, 0x20, 0x04, 0x10,
+ 0x04, 0x12, 0x04, 0x21, 0x04,
+ 0x22, 0x04, 0x12, 0x04, 0x23,
+ 0x04, 0x19, 0x04, 0x22, 0x04,
+ 0x15, 0x00, 0x33, 0x8F, 0x1C,
+ 0x04, 0x80, 0x04, 0x17, 0x04,
+ 0x14, 0x04, 0x20, 0x04, 0x10,
+ 0x04, 0x12, 0x04, 0x21, 0x04,
+ 0x22, 0x04, 0x12, 0x04, 0x23,
+ 0x04, 0x19, 0x04, 0x22, 0x04,
+ 0x15, 0x00, 0x34 };
+
+static unsigned char setup_menu_712[] = { 0xD0, 0x60, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x19, 0x80, 0x04, 0x17,
+ 0x04, 0x14, 0x04, 0x20, 0x04,
+ 0x10, 0x04, 0x12, 0x04, 0x21,
+ 0x04, 0x22, 0x04, 0x12, 0x04,
+ 0x23, 0x04, 0x19, 0x04, 0x22,
+ 0x04, 0x15, 0x8F, 0x1C, 0x11,
+ 0x80, 0x04, 0x17, 0x04, 0x14,
+ 0x04, 0x20, 0x04, 0x10, 0x04,
+ 0x12, 0x04, 0x21, 0x04, 0x22,
+ 0x04, 0x12, 0x04, 0x23, 0x04,
+ 0x19, 0x04, 0x22, 0x04, 0x15,
+ 0x00, 0x35, 0x8F, 0x1C, 0x12,
+ 0x80, 0x04, 0x17, 0x04, 0x14,
+ 0x04, 0x20, 0x04, 0x10, 0x04,
+ 0x12, 0x04, 0x21, 0x04, 0x22,
+ 0x04, 0x12, 0x04, 0x23, 0x04,
+ 0x19, 0x04, 0x22, 0x04, 0x15,
+ 0x00, 0x36 };
+
+static unsigned char setup_menu_713[] = { 0xD0, 0x0D, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x00, 0x8F, 0x00 };
+
+static unsigned char setup_menu_811[] = { 0xD0, 0x3C, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x09, 0x80, 0x5D, 0xE5,
+ 0x51, 0x77, 0x7B, 0xB1, 0x53,
+ 0x55, 0x8F, 0x08, 0x01, 0x80,
+ 0x98, 0x79, 0x76, 0xEE, 0x4E,
+ 0x00, 0x8F, 0x08, 0x02, 0x80,
+ 0x98, 0x79, 0x76, 0xEE, 0x4E,
+ 0x8C, 0x8F, 0x08, 0x03, 0x80,
+ 0x98, 0x79, 0x76, 0xEE, 0x4E,
+ 0x09, 0x8F, 0x08, 0x04, 0x80,
+ 0x98, 0x79, 0x76, 0xEE, 0x56,
+ 0xDB };
+
+static unsigned char setup_menu_812[] = { 0xD0, 0x20, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x09, 0x80, 0x5D, 0xE5,
+ 0x51, 0x77, 0x7B, 0xB1, 0x53,
+ 0x55, 0x8F, 0x04, 0x11, 0x80,
+ 0x4E, 0x00, 0x8F, 0x04, 0x12,
+ 0x80, 0x4E, 0x8C };
+
+static unsigned char setup_menu_813[] = { 0xD0, 0x0D, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x00, 0x8F, 0x00 };
+
+static unsigned char setup_menu_911[] = { 0xD0, 0x44, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x09, 0x80, 0x00, 0x38,
+ 0x00, 0x30, 0x30, 0xEB, 0x00,
+ 0x30, 0x8F, 0x0A, 0x01, 0x80,
+ 0x00, 0x38, 0x00, 0x30, 0x30,
+ 0xEB, 0x00, 0x31, 0x8F, 0x0A,
+ 0x02, 0x80, 0x00, 0x38, 0x00,
+ 0x30, 0x30, 0xEB, 0x00, 0x32,
+ 0x8F, 0x0A, 0x03, 0x80, 0x00,
+ 0x38, 0x00, 0x30, 0x30, 0xEB,
+ 0x00, 0x33, 0x8F, 0x0A, 0x04,
+ 0x80, 0x00, 0x38, 0x00, 0x30,
+ 0x30, 0xEB, 0x00, 0x34 };
+
+static unsigned char setup_menu_912[] = { 0xD0, 0x2C, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x09, 0x80, 0x00, 0x38,
+ 0x00, 0x30, 0x30, 0xEB, 0x00,
+ 0x30, 0x8F, 0x0A, 0x11, 0x80,
+ 0x00, 0x38, 0x00, 0x30, 0x30,
+ 0xEB, 0x00, 0x35, 0x8F, 0x0A,
+ 0x12, 0x80, 0x00, 0x38, 0x00,
+ 0x30, 0x30, 0xEB, 0x00, 0x36 };
+
+static unsigned char setup_menu_913[] = { 0xD0, 0x0D, 0x81, 0x03, 0x01, 0x25,
+ 0x00, 0x82, 0x02, 0x81, 0x82,
+ 0x85, 0x00, 0x8F, 0x00 };
+
+static struct setup_menu_test setup_menu_data_111 = {
+ .pdu = setup_menu_111,
+ .pdu_len = sizeof(setup_menu_111),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .items[3] = {
+ .id = 4,
+ .text = "Item 4"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_112 = {
+ .pdu = setup_menu_112,
+ .pdu_len = sizeof(setup_menu_112),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu",
+ .items[0] = {
+ .id = 0x11,
+ .text = "One"
+ },
+ .items[1] = {
+ .id = 0x12,
+ .text = "Two"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_113 = {
+ .pdu = setup_menu_113,
+ .pdu_len = sizeof(setup_menu_113),
+ .qualifier = 0x00
+};
+
+static struct setup_menu_test setup_menu_data_121 = {
+ .pdu = setup_menu_121,
+ .pdu_len = sizeof(setup_menu_121),
+ .qualifier = 0x00,
+ .alpha_id = "LargeMenu1",
+ .items[0] = {
+ .id = 0x50,
+ .text = "Zero"
+ },
+ .items[1] = {
+ .id = 0x4F,
+ .text = "One"
+ },
+ .items[2] = {
+ .id = 0x4E,
+ .text = "Two"
+ },
+ .items[3] = {
+ .id = 0x4D,
+ .text = "Three"
+ },
+ .items[4] = {
+ .id = 0x4C,
+ .text = "Four"
+ },
+ .items[5] = {
+ .id = 0x4B,
+ .text = "Five"
+ },
+ .items[6] = {
+ .id = 0x4A,
+ .text = "Six"
+ },
+ .items[7] = {
+ .id = 0x49,
+ .text = "Seven"
+ },
+ .items[8] = {
+ .id = 0x48,
+ .text = "Eight"
+ },
+ .items[9] = {
+ .id = 0x47,
+ .text = "Nine"
+ },
+ .items[10] = {
+ .id = 0x46,
+ .text = "Alpha"
+ },
+ .items[11] = {
+ .id = 0x45,
+ .text = "Bravo"
+ },
+ .items[12] = {
+ .id = 0x44,
+ .text = "Charlie"
+ },
+ .items[13] = {
+ .id = 0x43,
+ .text = "Delta"
+ },
+ .items[14] = {
+ .id = 0x42,
+ .text = "Echo"
+ },
+ .items[15] = {
+ .id = 0x41,
+ .text = "Fox-trot"
+ },
+ .items[16] = {
+ .id = 0x40,
+ .text = "Black"
+ },
+ .items[17] = {
+ .id = 0x3F,
+ .text = "Brown"
+ },
+ .items[18] = {
+ .id = 0x3E,
+ .text = "Red"
+ },
+ .items[19] = {
+ .id = 0x3D,
+ .text = "Orange"
+ },
+ .items[20] = {
+ .id = 0x3C,
+ .text = "Yellow"
+ },
+ .items[21] = {
+ .id = 0x3B,
+ .text = "Green"
+ },
+ .items[22] = {
+ .id = 0x3A,
+ .text = "Blue"
+ },
+ .items[23] = {
+ .id = 0x39,
+ .text = "Violet"
+ },
+ .items[24] = {
+ .id = 0x38,
+ .text = "Grey"
+ },
+ .items[25] = {
+ .id = 0x37,
+ .text = "White"
+ },
+ .items[26] = {
+ .id = 0x36,
+ .text = "milli"
+ },
+ .items[27] = {
+ .id = 0x35,
+ .text = "micro"
+ },
+ .items[28] = {
+ .id = 0x34,
+ .text = "nano"
+ },
+ .items[29] = {
+ .id = 0x33,
+ .text = "pico"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_122 = {
+ .pdu = setup_menu_122,
+ .pdu_len = sizeof(setup_menu_122),
+ .qualifier = 0x00,
+ .alpha_id = "LargeMenu2",
+ .items[0] = {
+ .id = 0xFF,
+ .text = "1 Call Forward Unconditional"
+ },
+ .items[1] = {
+ .id = 0xFE,
+ .text = "2 Call Forward On User Busy"
+ },
+ .items[2] = {
+ .id = 0xFD,
+ .text = "3 Call Forward On No Reply"
+ },
+ .items[3] = {
+ .id = 0xFC,
+ .text = "4 Call Forward On User Not Reachable"
+ },
+ .items[4] = {
+ .id = 0xFB,
+ .text = "5 Barring Of All Outgoing Calls"
+ },
+ .items[5] = {
+ .id = 0xFA,
+ .text = "6 Barring Of All Outgoing Int Calls"
+ },
+ .items[6] = {
+ .id = 0xF9,
+ .text = "7 CLI Presentation"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_123 = {
+ .pdu = setup_menu_123,
+ .pdu_len = sizeof(setup_menu_123),
+ .qualifier = 0x00,
+ .alpha_id = "The SIM shall supply a set of menu items, which shall "
+ "be integrated with the menu system (or other MMI "
+ "facility) in order to give the user the opportunity "
+ "to choose one of these menu items at his own "
+ "discretion. Each item comprises a sh",
+ .items[0] = {
+ .id = 0x01,
+ .text = "Y"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_211 = {
+ .pdu = setup_menu_211,
+ .pdu_len = sizeof(setup_menu_211),
+ .qualifier = 0x80,
+ .alpha_id = "Toolkit Menu",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .items[3] = {
+ .id = 4,
+ .text = "Item 4"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_311 = {
+ .pdu = setup_menu_311,
+ .pdu_len = sizeof(setup_menu_311),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .items[3] = {
+ .id = 4,
+ .text = "Item 4"
+ },
+ .next_act = {
+ .list = { STK_COMMAND_TYPE_SEND_SMS,
+ STK_COMMAND_TYPE_SETUP_CALL,
+ STK_COMMAND_TYPE_LAUNCH_BROWSER,
+ STK_COMMAND_TYPE_PROVIDE_LOCAL_INFO },
+ .len = 4
+ }
+};
+
+static struct setup_menu_test setup_menu_data_411 = {
+ .pdu = setup_menu_411,
+ .pdu_len = sizeof(setup_menu_411),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .icon_id = {
+ .qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
+ .id = 1
+ },
+ .item_icon_id_list = {
+ .qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
+ .list = { 5, 5, 5 },
+ .len = 3
+ }
+};
+
+static struct setup_menu_test setup_menu_data_421 = {
+ .pdu = setup_menu_421,
+ .pdu_len = sizeof(setup_menu_421),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .icon_id = {
+ .qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
+ .id = 1
+ },
+ .item_icon_id_list = {
+ .qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
+ .list = { 5, 5, 5 },
+ .len = 3
+ }
+};
+
+static struct setup_menu_test setup_menu_data_511 = {
+ .pdu = setup_menu_511,
+ .pdu_len = sizeof(setup_menu_511),
+ .qualifier = 0x01,
+ .alpha_id = "Toolkit Menu",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_611 = {
+ .pdu = setup_menu_611,
+ .pdu_len = sizeof(setup_menu_611),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 1",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x00, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4,
+ 0x00, 0x06, 0x00, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_612 = {
+ .pdu = setup_menu_612,
+ .pdu_len = sizeof(setup_menu_612),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 2",
+ .items[0] = {
+ .id = 4,
+ .text = "Item 4"
+ },
+ .items[1] = {
+ .id = 5,
+ .text = "Item 5"
+ },
+ .items[2] = {
+ .id = 6,
+ .text = "Item 6"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_621 = {
+ .pdu = setup_menu_621,
+ .pdu_len = sizeof(setup_menu_621),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 1",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x01, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x01, 0xB4, 0x00, 0x06, 0x01, 0xB4,
+ 0x00, 0x06, 0x01, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_622 = {
+ .pdu = setup_menu_622,
+ .pdu_len = sizeof(setup_menu_622),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 2",
+ .items[0] = {
+ .id = 4,
+ .text = "Item 4"
+ },
+ .items[1] = {
+ .id = 5,
+ .text = "Item 5"
+ },
+ .items[2] = {
+ .id = 6,
+ .text = "Item 6"
+ }
+};
+
+/*
+ * Some problem with data of item #3 in item_text_attr_list
+ * and the explanation
+ */
+static struct setup_menu_test setup_menu_data_631 = {
+ .pdu = setup_menu_631,
+ .pdu_len = sizeof(setup_menu_631),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 1",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x02, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x02, 0xB4, 0x00, 0x06, 0x02, 0xB4,
+ 0x00, 0x06, 0x02, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_632 = {
+ .pdu = setup_menu_632,
+ .pdu_len = sizeof(setup_menu_632),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 2",
+ .items[0] = {
+ .id = 4,
+ .text = "Item 4"
+ },
+ .items[1] = {
+ .id = 5,
+ .text = "Item 5"
+ },
+ .items[2] = {
+ .id = 6,
+ .text = "Item 6"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_641 = {
+ .pdu = setup_menu_641,
+ .pdu_len = sizeof(setup_menu_641),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 1",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x04, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x04, 0xB4, 0x00, 0x06, 0x04, 0xB4,
+ 0x00, 0x06, 0x04, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_642 = {
+ .pdu = setup_menu_642,
+ .pdu_len = sizeof(setup_menu_642),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 2",
+ .items[0] = {
+ .id = 4,
+ .text = "Item 4"
+ },
+ .items[1] = {
+ .id = 5,
+ .text = "Item 5"
+ },
+ .items[2] = {
+ .id = 6,
+ .text = "Item 6"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x00, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4,
+ 0x00, 0x06, 0x00, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_643 = {
+ .pdu = setup_menu_643,
+ .pdu_len = sizeof(setup_menu_643),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 3",
+ .items[0] = {
+ .id = 7,
+ .text = "Item 7"
+ },
+ .items[1] = {
+ .id = 8,
+ .text = "Item 8"
+ },
+ .items[2] = {
+ .id = 9,
+ .text = "Item 9"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_651 = {
+ .pdu = setup_menu_651,
+ .pdu_len = sizeof(setup_menu_651),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 1",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x08, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x08, 0xB4, 0x00, 0x06, 0x08, 0xB4,
+ 0x00, 0x06, 0x08, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_661 = {
+ .pdu = setup_menu_661,
+ .pdu_len = sizeof(setup_menu_661),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 1",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x10, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x10, 0xB4, 0x00, 0x06, 0x10, 0xB4,
+ 0x00, 0x06, 0x10, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_671 = {
+ .pdu = setup_menu_671,
+ .pdu_len = sizeof(setup_menu_671),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 1",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x20, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x20, 0xB4, 0x00, 0x06, 0x20, 0xB4,
+ 0x00, 0x06, 0x20, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_681 = {
+ .pdu = setup_menu_681,
+ .pdu_len = sizeof(setup_menu_681),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 1",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x40, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x40, 0xB4, 0x00, 0x06, 0x40, 0xB4,
+ 0x00, 0x06, 0x40, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_691 = {
+ .pdu = setup_menu_691,
+ .pdu_len = sizeof(setup_menu_691),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu 1",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0E, 0x80, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x80, 0xB4, 0x00, 0x06, 0x80, 0xB4,
+ 0x00, 0x06, 0x80, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_6101 = {
+ .pdu = setup_menu_6101,
+ .pdu_len = sizeof(setup_menu_6101),
+ .qualifier = 0x00,
+ .alpha_id = "Toolkit Menu",
+ .items[0] = {
+ .id = 1,
+ .text = "Item 1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "Item 2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "Item 3"
+ },
+ .text_attr = {
+ .len = 4,
+ .attributes = { 0x00, 0x0C, 0x00, 0xB4 }
+ },
+ .item_text_attr_list = {
+ .len = 12,
+ .list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4,
+ 0x00, 0x06, 0x00, 0xB4 }
+ }
+};
+
+static struct setup_menu_test setup_menu_data_711 = {
+ .pdu = setup_menu_711,
+ .pdu_len = sizeof(setup_menu_711),
+ .qualifier = 0x00,
+ .alpha_id = "ЗДРАВСТВУЙТЕ",
+ .items[0] = {
+ .id = 1,
+ .text = "ЗДРАВСТВУЙТЕ1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "ЗДРАВСТВУЙТЕ2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "ЗДРАВСТВУЙТЕ3"
+ },
+ .items[3] = {
+ .id = 4,
+ .text = "ЗДРАВСТВУЙТЕ4"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_712 = {
+ .pdu = setup_menu_712,
+ .pdu_len = sizeof(setup_menu_712),
+ .qualifier = 0x00,
+ .alpha_id = "ЗДРАВСТВУЙТЕ",
+ .items[0] = {
+ .id = 0x11,
+ .text = "ЗДРАВСТВУЙТЕ5"
+ },
+ .items[1] = {
+ .id = 0x12,
+ .text = "ЗДРАВСТВУЙТЕ6"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_713 = {
+ .pdu = setup_menu_713,
+ .pdu_len = sizeof(setup_menu_713),
+ .qualifier = 0x00
+};
+
+static struct setup_menu_test setup_menu_data_811 = {
+ .pdu = setup_menu_811,
+ .pdu_len = sizeof(setup_menu_811),
+ .qualifier = 0x00,
+ .alpha_id = "工具箱单",
+ .items[0] = {
+ .id = 1,
+ .text = "项目一"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "项目二"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "项目三"
+ },
+ .items[3] = {
+ .id = 4,
+ .text = "项目四"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_812 = {
+ .pdu = setup_menu_812,
+ .pdu_len = sizeof(setup_menu_812),
+ .qualifier = 0x00,
+ .alpha_id = "工具箱单",
+ .items[0] = {
+ .id = 0x11,
+ .text = "一"
+ },
+ .items[1] = {
+ .id = 0x12,
+ .text = "二"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_813 = {
+ .pdu = setup_menu_813,
+ .pdu_len = sizeof(setup_menu_813),
+ .qualifier = 0x00
+};
+
+static struct setup_menu_test setup_menu_data_911 = {
+ .pdu = setup_menu_911,
+ .pdu_len = sizeof(setup_menu_911),
+ .qualifier = 0x00,
+ .alpha_id = "80ル0",
+ .items[0] = {
+ .id = 1,
+ .text = "80ル1"
+ },
+ .items[1] = {
+ .id = 2,
+ .text = "80ル2"
+ },
+ .items[2] = {
+ .id = 3,
+ .text = "80ル3"
+ },
+ .items[3] = {
+ .id = 4,
+ .text = "80ル4"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_912 = {
+ .pdu = setup_menu_912,
+ .pdu_len = sizeof(setup_menu_912),
+ .qualifier = 0x00,
+ .alpha_id = "80ル0",
+ .items[0] = {
+ .id = 0x11,
+ .text = "80ル5"
+ },
+ .items[1] = {
+ .id = 0x12,
+ .text = "80ル6"
+ }
+};
+
+static struct setup_menu_test setup_menu_data_913 = {
+ .pdu = setup_menu_913,
+ .pdu_len = sizeof(setup_menu_913),
+ .qualifier = 0x00
+};
+
+/* Defined in TS 102.384 Section 27.22.4.7 */
+static void test_setup_menu(gconstpointer data)
+{
+ const struct setup_menu_test *test = data;
+ struct stk_command *command;
+
+ command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
+
+ g_assert(command);
+
+ g_assert(command->number == 1);
+ g_assert(command->type == STK_COMMAND_TYPE_SETUP_MENU);
+ g_assert(command->qualifier == test->qualifier);
+
+ g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
+ g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_TERMINAL);
+
+ if (test->alpha_id)
+ g_assert(command->setup_menu.alpha_id);
+ check_common_text(command->setup_menu.alpha_id, test->alpha_id);
+ check_items(command->setup_menu.items, test->items);
+ check_items_next_action_indicator(&command->setup_menu.next_act,
+ &test->next_act);
+ check_icon_id(&command->setup_menu.icon_id, &test->icon_id);
+ check_item_icon_id_list(&command->setup_menu.item_icon_id_list,
+ &test->item_icon_id_list);
+ check_text_attr(&command->setup_menu.text_attr, &test->text_attr);
+ check_item_text_attribute_list(&command->setup_menu.item_text_attr_list,
+ &test->item_text_attr_list);
+
+ stk_command_free(command);
+}
+
struct send_sms_test {
const unsigned char *pdu;
unsigned int pdu_len;
@@ -4367,6 +5912,77 @@ int main(int argc, char **argv)
g_test_add_data_func("/teststk/Poll Interval 1.1.1",
&poll_interval_data_111, test_poll_interval);
+ g_test_add_data_func("/teststk/Setup Menu 1.1.1",
+ &setup_menu_data_111, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 1.1.2",
+ &setup_menu_data_112, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 1.1.3",
+ &setup_menu_data_113, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 1.2.1",
+ &setup_menu_data_121, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 1.2.2",
+ &setup_menu_data_122, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 1.2.3",
+ &setup_menu_data_123, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 2.1.1",
+ &setup_menu_data_211, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 3.1.1",
+ &setup_menu_data_311, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 4.1.1",
+ &setup_menu_data_411, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 4.2.1",
+ &setup_menu_data_421, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 5.1.1",
+ &setup_menu_data_511, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.1.1",
+ &setup_menu_data_611, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.1.2",
+ &setup_menu_data_612, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.2.1",
+ &setup_menu_data_621, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.2.2",
+ &setup_menu_data_622, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.3.1",
+ &setup_menu_data_631, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.3.2",
+ &setup_menu_data_632, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.4.1",
+ &setup_menu_data_641, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.4.2",
+ &setup_menu_data_642, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.4.3",
+ &setup_menu_data_643, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.5.1",
+ &setup_menu_data_651, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.6.1",
+ &setup_menu_data_661, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.7.1",
+ &setup_menu_data_671, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.8.1",
+ &setup_menu_data_681, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.9.1",
+ &setup_menu_data_691, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 6.10.1",
+ &setup_menu_data_6101, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 7.1.1",
+ &setup_menu_data_711, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 7.1.2",
+ &setup_menu_data_712, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 7.1.3",
+ &setup_menu_data_713, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 8.1.1",
+ &setup_menu_data_811, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 8.1.2",
+ &setup_menu_data_812, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 8.1.3",
+ &setup_menu_data_813, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 9.1.1",
+ &setup_menu_data_911, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 9.1.2",
+ &setup_menu_data_912, test_setup_menu);
+ g_test_add_data_func("/teststk/Setup Menu 9.1.3",
+ &setup_menu_data_913, test_setup_menu);
+
g_test_add_data_func("/teststk/Send SMS 1.1",
&send_sms_data_11, test_send_sms);