aboutsummaryrefslogtreecommitdiff
path: root/src/tests/test-modem-helpers.c
diff options
context:
space:
mode:
authorDan Williams <dan@ioncontrol.co>2025-05-19 09:05:00 -0500
committerDan Williams <dan@ioncontrol.co>2025-05-19 09:05:00 -0500
commitba8633e48ac7d1632f2c9bc108d420b2a56bfb56 (patch)
tree5ce4289b44fc7186c3ff5ce5e9b9c82a98cbb38f /src/tests/test-modem-helpers.c
parentec218e7052b7fd85302d1f5c9b01086ef3e562d9 (diff)
parent6a4fdbba428bc0a11f2e53af87648cdf6691e3e2 (diff)
Merge request !1354 from 'dp/le910q-ecm-upstream'
Add ECM support for Telit LE910Q1 https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1354
Diffstat (limited to 'src/tests/test-modem-helpers.c')
-rw-r--r--src/tests/test-modem-helpers.c44
1 files changed, 44 insertions, 0 deletions
diff --git a/src/tests/test-modem-helpers.c b/src/tests/test-modem-helpers.c
index a6755b0a..5ed5721d 100644
--- a/src/tests/test-modem-helpers.c
+++ b/src/tests/test-modem-helpers.c
@@ -2261,6 +2261,47 @@ test_cind_response_moto_v3m (void *f, gpointer d)
}
/*****************************************************************************/
+/* Test CGEREP test responses */
+
+static void
+test_cgerep_response (const gchar *str,
+ MM3gppCgerepMode expected_modes)
+{
+ gboolean ret;
+ MM3gppCgerepMode modes = MM_3GPP_CGEREP_MODE_NONE;
+ GError *error = NULL;
+
+ ret = mm_3gpp_parse_cgerep_test_response (str, NULL, &modes, &error);
+ g_assert_no_error (error);
+ g_assert (ret);
+
+ g_assert_cmpuint (modes, ==, expected_modes);
+}
+
+static void
+test_cgerep_response_telit_le910q1 (void)
+{
+ static const gchar *str = "+CGEREP: (0,1),(0)";
+ static const MM3gppCgerepMode expected_modes = ( \
+ MM_3GPP_CGEREP_MODE_DISCARD_URCS | \
+ MM_3GPP_CGEREP_MODE_DISCARD_URCS_IF_LINK_RESERVED);
+
+ test_cgerep_response (str, expected_modes);
+}
+
+static void
+test_cgerep_response_telit_ln920 (void)
+{
+ static const gchar *str = "+CGEREP: (0-2),(0,1)";
+ static const MM3gppCgerepMode expected_modes = ( \
+ MM_3GPP_CGEREP_MODE_DISCARD_URCS | \
+ MM_3GPP_CGEREP_MODE_DISCARD_URCS_IF_LINK_RESERVED | \
+ MM_3GPP_CGEREP_MODE_BUFFER_URCS_IF_LINK_RESERVED);
+
+ test_cgerep_response (str, expected_modes);
+}
+
+/*****************************************************************************/
/* Test +CGEV indication parsing */
typedef struct {
@@ -5194,6 +5235,9 @@ int main (int argc, char **argv)
g_test_suite_add (suite, TESTCASE (test_cind_response_linktop_lw273, NULL));
g_test_suite_add (suite, TESTCASE (test_cind_response_moto_v3m, NULL));
+ g_test_suite_add (suite, TESTCASE (test_cgerep_response_telit_le910q1, NULL));
+ g_test_suite_add (suite, TESTCASE (test_cgerep_response_telit_ln920, NULL));
+
g_test_suite_add (suite, TESTCASE (test_cgev_indication, NULL));
g_test_suite_add (suite, TESTCASE (test_iccid_parse_quoted_swap_19_digit, NULL));