[svn-upgrade] Integrating new upstream version, iodine (0.5.0)
[debian/iodine.git] / tests / base32.c
index 849790c76c6c2de807d0d3b8892e997ccef18aa4..a3f95bbfd5fea2db7015818cea388adc8da5fe99 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006-2007 Bjorn Andersson <flex@kryo.se>, Erik Ekman <yarrick@kryo.se>
+ * Copyright (c) 2006-2009 Bjorn Andersson <flex@kryo.se>, Erik Ekman <yarrick@kryo.se>
  *
  * Permission to use, copy, modify, and distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above
@@ -38,12 +38,15 @@ START_TEST(test_base32_encode)
 {
        size_t len;
        char buf[4096];
+       struct encoder *b32;
        int val;
        int i;
 
+       b32 = get_base32_encoder();
+
        for (i = 0; testpairs[i].a != NULL; i++) {
                len = sizeof(buf);
-               val = base32_encode(buf, &len, testpairs[i].a, strlen(testpairs[i].a));
+               val = b32->encode(buf, &len, testpairs[i].a, strlen(testpairs[i].a));
 
                fail_unless(val > 0, strerror(errno));
                fail_unless(strcmp(buf, testpairs[i].b) == 0,
@@ -56,12 +59,15 @@ START_TEST(test_base32_decode)
 {
        size_t len;
        char buf[4096];
+       struct encoder *b32;
        int val;
        int i;
+       
+       b32 = get_base32_encoder();
 
        for (i = 0; testpairs[i].a != NULL; i++) {
                len = sizeof(buf);
-               val = base32_decode(buf, &len, testpairs[i].b, strlen(testpairs[i].b));
+               val = b32->decode(buf, &len, testpairs[i].b, strlen(testpairs[i].b));
 
                fail_unless(val > 0, strerror(errno));
                fail_unless(buf != NULL, "buf == NULL");
@@ -71,6 +77,18 @@ START_TEST(test_base32_decode)
 }
 END_TEST
 
+START_TEST(test_base32_5to8_8to5)
+{
+       int i;
+       int c;
+
+       for (i = 0; i < 32; i++) {
+               c = b32_5to8(i);        
+               fail_unless(b32_8to5(c) == i);
+       }
+}
+END_TEST
+
 TCase *
 test_base32_create_tests()
 {
@@ -79,6 +97,7 @@ test_base32_create_tests()
        tc = tcase_create("Base32");
        tcase_add_test(tc, test_base32_encode);
        tcase_add_test(tc, test_base32_decode);
+       tcase_add_test(tc, test_base32_5to8_8to5);
 
        return tc;
 }