modem-helpers: allow optional whitespace in +CGDCONT response
Add testcase for Thuraya XT. Signed-off-by: Thomas Sailer <t.sailer@alumni.ethz.ch>
This commit is contained in:

committed by
Aleksander Morgado

parent
18c8dd60a7
commit
4442173dcf
@@ -867,7 +867,7 @@ mm_3gpp_parse_cgdcont_test_response (const gchar *response,
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
r = g_regex_new ("\\+CGDCONT:\\s*\\((\\d+)-?(\\d+)?\\),\\(?\"(\\S+)\"",
|
r = g_regex_new ("\\+CGDCONT:\\s*\\(\\s*(\\d+)\\s*-?\\s*(\\d+)?\\s*\\)\\s*,\\s*\\(?\"(\\S+)\"",
|
||||||
G_REGEX_DOLLAR_ENDONLY | G_REGEX_RAW,
|
G_REGEX_DOLLAR_ENDONLY | G_REGEX_RAW,
|
||||||
0, &inner_error);
|
0, &inner_error);
|
||||||
g_assert (r != NULL);
|
g_assert (r != NULL);
|
||||||
@@ -955,7 +955,7 @@ mm_3gpp_parse_cgdcont_read_response (const gchar *reply,
|
|||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
list = NULL;
|
list = NULL;
|
||||||
r = g_regex_new ("\\+CGDCONT:\\s*(\\d+)\\s*,([^,\\)]*),([^,\\)]*),([^,\\)]*)",
|
r = g_regex_new ("\\+CGDCONT:\\s*(\\d+)\\s*,([^, \\)]*)\\s*,([^, \\)]*)\\s*,([^, \\)]*)",
|
||||||
G_REGEX_DOLLAR_ENDONLY | G_REGEX_RAW,
|
G_REGEX_DOLLAR_ENDONLY | G_REGEX_RAW,
|
||||||
0, &inner_error);
|
0, &inner_error);
|
||||||
if (r) {
|
if (r) {
|
||||||
|
@@ -1798,6 +1798,19 @@ test_cgdcont_test_response_single_context (void *f, gpointer d)
|
|||||||
test_cgdcont_test_results ("Single Context", reply, &expected[0], G_N_ELEMENTS (expected));
|
test_cgdcont_test_results ("Single Context", reply, &expected[0], G_N_ELEMENTS (expected));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
test_cgdcont_test_response_thuraya (void *f, gpointer d)
|
||||||
|
{
|
||||||
|
const gchar *reply =
|
||||||
|
"+CGDCONT: ( 1 ) , \"IP\" ,,, (0-2),(0-3)\r\n"
|
||||||
|
"+CGDCONT: , \"PPP\" ,,, (0-2),(0-3)\r\n";
|
||||||
|
static MM3gppPdpContextFormat expected[] = {
|
||||||
|
{ 1, 1, MM_BEARER_IP_FAMILY_IPV4 }
|
||||||
|
};
|
||||||
|
|
||||||
|
test_cgdcont_test_results ("Thuraya", reply, &expected[0], G_N_ELEMENTS (expected));
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/* Test CGDCONT read responses */
|
/* Test CGDCONT read responses */
|
||||||
|
|
||||||
@@ -2739,6 +2752,7 @@ int main (int argc, char **argv)
|
|||||||
g_test_suite_add (suite, TESTCASE (test_cgdcont_test_response_multiple, NULL));
|
g_test_suite_add (suite, TESTCASE (test_cgdcont_test_response_multiple, NULL));
|
||||||
g_test_suite_add (suite, TESTCASE (test_cgdcont_test_response_multiple_and_ignore, NULL));
|
g_test_suite_add (suite, TESTCASE (test_cgdcont_test_response_multiple_and_ignore, NULL));
|
||||||
g_test_suite_add (suite, TESTCASE (test_cgdcont_test_response_single_context, NULL));
|
g_test_suite_add (suite, TESTCASE (test_cgdcont_test_response_single_context, NULL));
|
||||||
|
g_test_suite_add (suite, TESTCASE (test_cgdcont_test_response_thuraya, NULL));
|
||||||
|
|
||||||
g_test_suite_add (suite, TESTCASE (test_cgdcont_read_response_nokia, NULL));
|
g_test_suite_add (suite, TESTCASE (test_cgdcont_read_response_nokia, NULL));
|
||||||
g_test_suite_add (suite, TESTCASE (test_cgdcont_read_response_samsung, NULL));
|
g_test_suite_add (suite, TESTCASE (test_cgdcont_read_response_samsung, NULL));
|
||||||
|
Reference in New Issue
Block a user