~ubuntu-branches/ubuntu/raring/modemmanager/raring

« back to all changes in this revision

Viewing changes to src/tests/test-charsets.c

  • Committer: Package Import Robot
  • Author(s): Mathieu Trudel-Lapierre
  • Date: 2012-09-14 14:15:15 UTC
  • Revision ID: package-import@ubuntu.com-20120914141515-5dvvyvniycdffkdo
Tags: 0.6.0.0-0ubuntu2
debian/patches/git_better_handle_ucs2_convert_e07c216.patch,
debian/patches/git_skip_add_utf8_check_219424a.patch: fix UCS2 conversion
for some Huawei devices which return "garbage" along with the response for
the +COPS command. (LP: #1049426)

Show diffs side-by-side

added added

removed removed

Lines of Context:
326
326
    g_free (packed);
327
327
}
328
328
 
 
329
static void
 
330
test_take_convert_ucs2_hex_utf8 (void *f, gpointer d)
 
331
{
 
332
    gchar *src, *converted;
 
333
 
 
334
    /* Ensure hex-encoded UCS-2 works */
 
335
    src = g_strdup ("0054002d004d006f00620069006c0065");
 
336
    converted = mm_charset_take_and_convert_to_utf8 (src, MM_MODEM_CHARSET_UCS2);
 
337
    g_assert_cmpstr (converted, ==, "T-Mobile");
 
338
    g_free (converted);
 
339
}
 
340
 
 
341
static void
 
342
test_take_convert_ucs2_bad_ascii (void *f, gpointer d)
 
343
{
 
344
    gchar *src, *converted;
 
345
 
 
346
    /* Test that something mostly ASCII returns most of the original string */
 
347
    src = g_strdup ("Orange\241");
 
348
    converted = mm_charset_take_and_convert_to_utf8 (src, MM_MODEM_CHARSET_UCS2);
 
349
    g_assert_cmpstr (converted, ==, "Orange");
 
350
    g_free (converted);
 
351
}
 
352
 
 
353
static void
 
354
test_take_convert_ucs2_bad_ascii2 (void *f, gpointer d)
 
355
{
 
356
    gchar *src, *converted;
 
357
 
 
358
    /* Ensure something completely screwed up doesn't crash */
 
359
    src = g_strdup ("\241\255\254\250\244\234");
 
360
    converted = mm_charset_take_and_convert_to_utf8 (src, MM_MODEM_CHARSET_UCS2);
 
361
    g_assert (converted == NULL);
 
362
}
 
363
 
329
364
 
330
365
#if GLIB_CHECK_VERSION(2,25,12)
331
366
typedef GTestFixtureFunc TCFunc;
360
395
 
361
396
    g_test_suite_add (suite, TESTCASE (test_pack_gsm7_7_chars_offset, NULL));
362
397
 
 
398
    g_test_suite_add (suite, TESTCASE (test_take_convert_ucs2_hex_utf8, NULL));
 
399
    g_test_suite_add (suite, TESTCASE (test_take_convert_ucs2_bad_ascii, NULL));
 
400
    g_test_suite_add (suite, TESTCASE (test_take_convert_ucs2_bad_ascii2, NULL));
 
401
 
363
402
    result = g_test_run ();
364
403
 
365
404
    return result;