diff options
author | Petr Krasnoshchekov <petr.krasnoshchekov@wirenboard.ru> | 2023-10-09 12:43:20 +0500 |
---|---|---|
committer | Aleksander Morgado <aleksandermj@chromium.org> | 2023-12-01 12:49:45 +0000 |
commit | 277d7857353592ad607822823e35c17e27cef71e (patch) | |
tree | efb1debc507e5daecf7c373e749f92eb8c8efbb8 /src/tests/test-modem-helpers.c | |
parent | d6d9be125e7c6249e3d51454b76a7d5c59349e9d (diff) |
modem-helpers: improve CGDCONT read response parsing
SIM A7600E-H sends only 3 parameters in CGDCONT read response (+CGDCONT: 1,"IP","nate.sktelecom.com").
The parsing regex requeres 4 parameters, so the response is not matched.
In addition fourth parameter is not used by parsing code.
Diffstat (limited to 'src/tests/test-modem-helpers.c')
-rw-r--r-- | src/tests/test-modem-helpers.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/tests/test-modem-helpers.c b/src/tests/test-modem-helpers.c index 01f4c910..70716765 100644 --- a/src/tests/test-modem-helpers.c +++ b/src/tests/test-modem-helpers.c @@ -2688,6 +2688,22 @@ test_cgdcont_read_response_samsung (void *f, gpointer d) test_cgdcont_read_results ("Samsung", reply, &expected[0], G_N_ELEMENTS (expected)); } +static void +test_cgdcont_read_response_simcom (void *f, gpointer d) +{ + const gchar *reply = + "+CGDCONT: 1,\"IP\",\"nate.sktelecom.com\"\r\n" + "+CGDCONT: 2,\"IP\",\"epc.tmobile.com\"\r\n" + "+CGDCONT: 3,\"IP\",\"MAXROAM.com\"\r\n"; + static MM3gppPdpContext expected[] = { + { 1, MM_BEARER_IP_FAMILY_IPV4, (gchar *) "nate.sktelecom.com" }, + { 2, MM_BEARER_IP_FAMILY_IPV4, (gchar *) "epc.tmobile.com" }, + { 3, MM_BEARER_IP_FAMILY_IPV4, (gchar *) "MAXROAM.com" } + }; + + test_cgdcont_read_results ("Simcom", reply, &expected[0], G_N_ELEMENTS (expected)); +} + /*****************************************************************************/ /* Test CGDCONT read responses */ @@ -4778,6 +4794,7 @@ int main (int argc, char **argv) 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_simcom, NULL)); g_test_suite_add (suite, TESTCASE (test_profile_selection, NULL)); |