summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKen-ichirou MATSUZAWA <chamaken@gmail.com>2014-09-10 17:53:31 +0900
committerFlorian Westphal <fw@strlen.de>2014-09-11 21:37:40 +0200
commit7b210390cd92ae27c6afd0865b40bf436d65ec52 (patch)
tree76c6a40d076d461cbfe7e4aacb521eaf5bedc54c
parent305fed6fe9ab291938a4c97e144ac8db71c3a11e (diff)
qa: add tests for new bitmask functions
for nfct_bitmask_clear() and nfct_bitmask_equal() Signed-off-by: Ken-ichirou MATSUZAWA <chamas@h4.dion.ne.jp> Signed-off-by: Florian Westphal <fw@strlen.de>
-rw-r--r--qa/test_api.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/qa/test_api.c b/qa/test_api.c
index f17db31..fe1cb78 100644
--- a/qa/test_api.c
+++ b/qa/test_api.c
@@ -80,6 +80,43 @@ static void test_nfct_bitmask(void)
assert(!nfct_bitmask_test_bit(b, i));
}
+ /* nfct_bitmask_clear() */
+ for (i = 0; i < maxb; i++) {
+ nfct_bitmask_set_bit(b, i);
+ assert(nfct_bitmask_test_bit(b, i));
+ nfct_bitmask_clear(b);
+ assert(!nfct_bitmask_test_bit(b, i));
+ }
+
+ for (i = 0; i < maxb; i++)
+ nfct_bitmask_set_bit(b, i);
+ nfct_bitmask_clear(b);
+ for (i = 0; i < maxb; i++)
+ assert(!nfct_bitmask_test_bit(b, i));
+
+ /* nfct_bitmask_equal() */
+ for (i = 0; i < maxb / 32 * 32; i += 32) {
+ a = nfct_bitmask_new(i);
+ assert(!nfct_bitmask_equal(a, b));
+ nfct_bitmask_destroy(a);
+ }
+
+ a = nfct_bitmask_clone(b);
+ assert(nfct_bitmask_equal(a, b));
+ for (i = 0; i < maxb; i++) {
+ if (nfct_bitmask_test_bit(a, i)) {
+ nfct_bitmask_unset_bit(a, i);
+ assert(!nfct_bitmask_equal(a, b));
+ nfct_bitmask_set_bit(a, i);
+ } else {
+ nfct_bitmask_set_bit(a, i);
+ assert(!nfct_bitmask_equal(a, b));
+ nfct_bitmask_unset_bit(a, i);
+ }
+ assert(nfct_bitmask_equal(a, b));
+ }
+
+ nfct_bitmask_destroy(a);
nfct_bitmask_destroy(b);
ct1 = nfct_new();