mirror of git://git.sysmocom.de/ofono
unit: Add subscriber ready status test
This commit is contained in:
parent
a64b5453e8
commit
bc239450b6
|
@ -69,6 +69,30 @@ static const struct message_data message_data_device_caps = {
|
||||||
.binary_len = sizeof(message_binary_device_caps),
|
.binary_len = sizeof(message_binary_device_caps),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const unsigned char message_binary_subscriber_ready_status[] = {
|
||||||
|
0x03, 0x00, 0x00, 0x80, 0xB4, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||||
|
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA2, 0x89, 0xCC, 0x33,
|
||||||
|
0xBC, 0xBB, 0x8B, 0x4F, 0xB6, 0xB0, 0x13, 0x3E, 0xC2, 0xAA, 0xE6, 0xDF,
|
||||||
|
0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00,
|
||||||
|
0x01, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00,
|
||||||
|
0x44, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x01, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
|
||||||
|
0x33, 0x00, 0x31, 0x00, 0x30, 0x00, 0x34, 0x00, 0x31, 0x00, 0x30, 0x00,
|
||||||
|
0x32, 0x00, 0x32, 0x00, 0x37, 0x00, 0x39, 0x00, 0x32, 0x00, 0x33, 0x00,
|
||||||
|
0x33, 0x00, 0x37, 0x00, 0x34, 0x00, 0x00, 0x00, 0x38, 0x00, 0x39, 0x00,
|
||||||
|
0x30, 0x00, 0x31, 0x00, 0x34, 0x00, 0x31, 0x00, 0x30, 0x00, 0x34, 0x00,
|
||||||
|
0x32, 0x00, 0x31, 0x00, 0x32, 0x00, 0x32, 0x00, 0x37, 0x00, 0x39, 0x00,
|
||||||
|
0x32, 0x00, 0x33, 0x00, 0x33, 0x00, 0x37, 0x00, 0x34, 0x00, 0x37, 0x00,
|
||||||
|
0x31, 0x00, 0x35, 0x00, 0x31, 0x00, 0x32, 0x00, 0x34, 0x00, 0x33, 0x00,
|
||||||
|
0x31, 0x00, 0x30, 0x00, 0x35, 0x00, 0x39, 0x00, 0x36, 0x00, 0x00, 0x00
|
||||||
|
};
|
||||||
|
|
||||||
|
static const struct message_data message_data_subscriber_ready_status = {
|
||||||
|
.tid = 2,
|
||||||
|
.binary = message_binary_subscriber_ready_status,
|
||||||
|
.binary_len = sizeof(message_binary_subscriber_ready_status),
|
||||||
|
};
|
||||||
|
|
||||||
static struct mbim_message *build_message(const struct message_data *msg_data)
|
static struct mbim_message *build_message(const struct message_data *msg_data)
|
||||||
{
|
{
|
||||||
static const int frag_size = 64;
|
static const int frag_size = 64;
|
||||||
|
@ -147,6 +171,45 @@ static void parse_device_caps(const void *data)
|
||||||
mbim_message_unref(msg);
|
mbim_message_unref(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void parse_subscriber_ready_status(const void *data)
|
||||||
|
{
|
||||||
|
struct mbim_message *msg = build_message(data);
|
||||||
|
uint32_t ready_state;
|
||||||
|
char *imsi;
|
||||||
|
char *iccid;
|
||||||
|
uint32_t ready_info;
|
||||||
|
uint32_t n_phone_numbers;
|
||||||
|
char *phone_number;
|
||||||
|
struct mbim_message_iter array;
|
||||||
|
bool r;
|
||||||
|
|
||||||
|
r = mbim_message_get_arguments(msg, "ussuas",
|
||||||
|
&ready_state, &imsi, &iccid,
|
||||||
|
&ready_info,
|
||||||
|
&n_phone_numbers, &array);
|
||||||
|
assert(r);
|
||||||
|
|
||||||
|
assert(ready_state == 1);
|
||||||
|
assert(imsi);
|
||||||
|
assert(!strcmp(imsi, "310410227923374"));
|
||||||
|
assert(iccid);
|
||||||
|
assert(!strcmp(iccid, "89014104212279233747"));
|
||||||
|
assert(ready_info == 0);
|
||||||
|
|
||||||
|
assert(n_phone_numbers == 1);
|
||||||
|
assert(mbim_message_iter_next_entry(&array, &phone_number));
|
||||||
|
|
||||||
|
assert(phone_number);
|
||||||
|
assert(!strcmp(phone_number, "15124310596"));
|
||||||
|
l_free(phone_number);
|
||||||
|
|
||||||
|
assert(!mbim_message_iter_next_entry(&array, &phone_number));
|
||||||
|
|
||||||
|
l_free(imsi);
|
||||||
|
l_free(iccid);
|
||||||
|
mbim_message_unref(msg);
|
||||||
|
}
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
l_test_init(&argc, &argv);
|
l_test_init(&argc, &argv);
|
||||||
|
@ -154,5 +217,9 @@ int main(int argc, char *argv[])
|
||||||
l_test_add("Device Caps (parse)",
|
l_test_add("Device Caps (parse)",
|
||||||
parse_device_caps, &message_data_device_caps);
|
parse_device_caps, &message_data_device_caps);
|
||||||
|
|
||||||
|
l_test_add("Subscriber Ready Status (parse)",
|
||||||
|
parse_subscriber_ready_status,
|
||||||
|
&message_data_subscriber_ready_status);
|
||||||
|
|
||||||
return l_test_run();
|
return l_test_run();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue