aboutsummaryrefslogtreecommitdiff
path: root/src/tests/test-modem-helpers.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/tests/test-modem-helpers.c')
-rw-r--r--src/tests/test-modem-helpers.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/tests/test-modem-helpers.c b/src/tests/test-modem-helpers.c
index f02a0862..0afa22fc 100644
--- a/src/tests/test-modem-helpers.c
+++ b/src/tests/test-modem-helpers.c
@@ -1822,6 +1822,43 @@ test_iccid_parse_unquoted_invalid_mii (void *f, gpointer d)
}
/*****************************************************************************/
+/* Test APN cmp */
+
+typedef struct {
+ const gchar *existing;
+ const gchar *requested;
+ gboolean match_expected;
+} TestApnCmp;
+
+static const TestApnCmp test_apn_cmp[] = {
+ { "m2m.com.attz", "m2m.com.attz", TRUE },
+ { "m2m.com.attz", "M2M.COM.ATTZ", TRUE },
+ { "M2M.COM.ATTZ", "m2m.com.attz", TRUE },
+ { "m2m.com.attz.mnc170.mcc310.gprs", "m2m.com.attz", TRUE },
+ { "ac.vodafone.es.MNC001.MCC214.GPRS", "ac.vodafone.es", TRUE },
+ { "m2m.com.attz", "m2m.com.attz.mnc170.mcc310.gprs", FALSE },
+ { "ac.vodafone.es", "ac.vodafone.es.MNC001.MCC214.GPRS", FALSE },
+ { "internet.test", "internet", FALSE },
+ { "internet.test", "INTERNET", FALSE },
+ { "internet.test", "internet.tes", FALSE },
+ { "", "", FALSE },
+};
+
+static void
+test_cmp_apn_name (void)
+{
+ guint i;
+
+ for (i = 0; i < G_N_ELEMENTS (test_apn_cmp); i++) {
+ g_debug ("Comparing requested '%s' vs existing '%s': %s match",
+ test_apn_cmp[i].requested,
+ test_apn_cmp[i].existing,
+ test_apn_cmp[i].match_expected ? "should" : "shouldn't");
+ g_assert (mm_3gpp_cmp_apn_name (test_apn_cmp[i].requested, test_apn_cmp[i].existing) == test_apn_cmp[i].match_expected);
+ }
+}
+
+/*****************************************************************************/
/* Test CGDCONT test responses */
static void
@@ -3456,6 +3493,8 @@ int main (int argc, char **argv)
g_test_suite_add (suite, TESTCASE (test_cpms_response_empty_fields, NULL));
g_test_suite_add (suite, TESTCASE (test_cpms_query_response, NULL));
+ g_test_suite_add (suite, TESTCASE (test_cmp_apn_name, NULL));
+
g_test_suite_add (suite, TESTCASE (test_cgdcont_test_response_single, 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));