diff options
Diffstat (limited to 'test/test_bitvec.cpp')
-rw-r--r-- | test/test_bitvec.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/test_bitvec.cpp b/test/test_bitvec.cpp index 61685d1..8305675 100644 --- a/test/test_bitvec.cpp +++ b/test/test_bitvec.cpp @@ -248,6 +248,25 @@ test_gray_code() template <class T, size_t N> void +test_comparison() +{ + T a = make_zero_bitvec<T, N>(); + T b = make_zero_bitvec<T, N>(); + + for (size_t bit = 1; bit < N; ++bit) { + setBit(a, bit, 1); + + for (size_t i = 0; i < bit; ++i) { + setBit(a, i, rand() % 2 == 0); + setBit(b, i, rand() % 2 == 0); + } + + assert(b < a); + } +} + +template <class T, size_t N> +void test() { test_and<T, N>(); @@ -264,6 +283,7 @@ test() test_right_shift<T, N>(); test_find_first<T, N>(); test_gray_code<T, N>(); + test_comparison<T, N>(); } int |