tests: Move bitfield unit tests into wpa_supplicant module test
authorJouni Malinen <j@w1.fi>
Sun, 25 May 2014 19:17:12 +0000 (22:17 +0300)
committerJouni Malinen <j@w1.fi>
Mon, 26 May 2014 14:21:44 +0000 (17:21 +0300)
Signed-off-by: Jouni Malinen <j@w1.fi>
src/utils/utils_module_tests.c
tests/Makefile
tests/test-bitfield.c [deleted file]

index 2611c42..206bc9d 100644 (file)
@@ -9,6 +9,7 @@
 #include "utils/includes.h"
 
 #include "utils/common.h"
+#include "utils/bitfield.h"
 
 
 struct printf_test_data {
@@ -73,6 +74,89 @@ static int printf_encode_decode_tests(void)
 }
 
 
+static int bitfield_tests(void)
+{
+       struct bitfield *bf;
+       int i;
+       int errors = 0;
+
+       wpa_printf(MSG_INFO, "bitfield tests");
+
+       bf = bitfield_alloc(123);
+       if (bf == NULL)
+               return -1;
+
+       for (i = 0; i < 123; i++) {
+               if (bitfield_is_set(bf, i) || bitfield_is_set(bf, i + 1))
+                       errors++;
+               if (i > 0 && bitfield_is_set(bf, i - 1))
+                       errors++;
+               bitfield_set(bf, i);
+               if (!bitfield_is_set(bf, i))
+                       errors++;
+               bitfield_clear(bf, i);
+               if (bitfield_is_set(bf, i))
+                       errors++;
+       }
+
+       for (i = 123; i < 200; i++) {
+               if (bitfield_is_set(bf, i) || bitfield_is_set(bf, i + 1))
+                       errors++;
+               if (i > 0 && bitfield_is_set(bf, i - 1))
+                       errors++;
+               bitfield_set(bf, i);
+               if (bitfield_is_set(bf, i))
+                       errors++;
+               bitfield_clear(bf, i);
+               if (bitfield_is_set(bf, i))
+                       errors++;
+       }
+
+       for (i = 0; i < 123; i++) {
+               if (bitfield_is_set(bf, i) || bitfield_is_set(bf, i + 1))
+                       errors++;
+               bitfield_set(bf, i);
+               if (!bitfield_is_set(bf, i))
+                       errors++;
+       }
+
+       for (i = 0; i < 123; i++) {
+               if (!bitfield_is_set(bf, i))
+                       errors++;
+               bitfield_clear(bf, i);
+               if (bitfield_is_set(bf, i))
+                       errors++;
+       }
+
+       for (i = 0; i < 123; i++) {
+               if (bitfield_get_first_zero(bf) != i)
+                       errors++;
+               bitfield_set(bf, i);
+       }
+       if (bitfield_get_first_zero(bf) != -1)
+               errors++;
+       for (i = 0; i < 123; i++) {
+               if (!bitfield_is_set(bf, i))
+                       errors++;
+               bitfield_clear(bf, i);
+               if (bitfield_get_first_zero(bf) != i)
+                       errors++;
+               bitfield_set(bf, i);
+       }
+       if (bitfield_get_first_zero(bf) != -1)
+               errors++;
+
+       bitfield_free(bf);
+
+       if (errors) {
+               wpa_printf(MSG_ERROR, "%d bitfield test(s) failed", errors);
+               return -1;
+       }
+
+       return 0;
+}
+
+
 int utils_module_tests(void)
 {
        int ret = 0;
@@ -81,6 +165,8 @@ int utils_module_tests(void)
 
        if (printf_encode_decode_tests() < 0)
                ret = -1;
+       if (bitfield_tests() < 0)
+               ret = -1;
 
        return ret;
 }
index 6fed9fe..9877bb0 100644 (file)
@@ -1,5 +1,4 @@
 TESTS=test-base64 test-md4 test-md5 test-milenage test-ms_funcs \
-       test-bitfield \
        test-rsa-sig-ver \
        test-sha1 \
        test-sha256 test-aes test-asn1 test-x509 test-x509v3 test-list test-rc4
@@ -51,9 +50,6 @@ test-asn1: test-asn1.o $(LIBS)
 test-base64: test-base64.o $(LIBS)
        $(LDO) $(LDFLAGS) -o $@ $^ $(LLIBS)
 
-test-bitfield: test-bitfield.o $(LIBS)
-       $(LDO) $(LDFLAGS) -o $@ $^ $(LLIBS)
-
 test-https: test-https.o $(LIBS)
        $(LDO) $(LDFLAGS) -o $@ $< $(LLIBS)
 
@@ -93,7 +89,6 @@ test-x509v3: test-x509v3.o $(LIBS)
 
 run-tests: $(TESTS)
        ./test-aes
-       ./test-bitfield
        ./test-list
        ./test-md4
        ./test-md5
diff --git a/tests/test-bitfield.c b/tests/test-bitfield.c
deleted file mode 100644 (file)
index aff1790..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * bitfield unit tests
- * Copyright (c) 2013, Jouni Malinen <j@w1.fi>
- *
- * This software may be distributed under the terms of the BSD license.
- * See README for more details.
- */
-
-#include "utils/includes.h"
-#include "utils/bitfield.h"
-
-int main(int argc, char *argv[])
-{
-       struct bitfield *bf;
-       int i;
-       int errors = 0;
-
-       bf = bitfield_alloc(123);
-       if (bf == NULL)
-               return -1;
-
-       for (i = 0; i < 123; i++) {
-               if (bitfield_is_set(bf, i) || bitfield_is_set(bf, i + 1))
-                       errors++;
-               if (i > 0 && bitfield_is_set(bf, i - 1))
-                       errors++;
-               bitfield_set(bf, i);
-               if (!bitfield_is_set(bf, i))
-                       errors++;
-               bitfield_clear(bf, i);
-               if (bitfield_is_set(bf, i))
-                       errors++;
-       }
-
-       for (i = 123; i < 200; i++) {
-               if (bitfield_is_set(bf, i) || bitfield_is_set(bf, i + 1))
-                       errors++;
-               if (i > 0 && bitfield_is_set(bf, i - 1))
-                       errors++;
-               bitfield_set(bf, i);
-               if (bitfield_is_set(bf, i))
-                       errors++;
-               bitfield_clear(bf, i);
-               if (bitfield_is_set(bf, i))
-                       errors++;
-       }
-
-       for (i = 0; i < 123; i++) {
-               if (bitfield_is_set(bf, i) || bitfield_is_set(bf, i + 1))
-                       errors++;
-               bitfield_set(bf, i);
-               if (!bitfield_is_set(bf, i))
-                       errors++;
-       }
-
-       for (i = 0; i < 123; i++) {
-               if (!bitfield_is_set(bf, i))
-                       errors++;
-               bitfield_clear(bf, i);
-               if (bitfield_is_set(bf, i))
-                       errors++;
-       }
-
-       for (i = 0; i < 123; i++) {
-               if (bitfield_get_first_zero(bf) != i)
-                       errors++;
-               bitfield_set(bf, i);
-       }
-       if (bitfield_get_first_zero(bf) != -1)
-               errors++;
-       for (i = 0; i < 123; i++) {
-               if (!bitfield_is_set(bf, i))
-                       errors++;
-               bitfield_clear(bf, i);
-               if (bitfield_get_first_zero(bf) != i)
-                       errors++;
-               bitfield_set(bf, i);
-       }
-       if (bitfield_get_first_zero(bf) != -1)
-               errors++;
-
-       bitfield_free(bf);
-
-       if (errors) {
-               printf("%d test(s) failed\n", errors);
-               return -1;
-       }
-
-       return 0;
-}