diff options
author | Brecht Van Lommel <brecht@blender.org> | 2020-08-07 17:43:42 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2020-08-10 19:14:00 +0300 |
commit | 53d203dea8230da4e80f3cc61468a4e24ff6759c (patch) | |
tree | 3f1b7498fb1a3108e60a4355bec0e4eef76110e4 /source/blender/blenlib/tests/BLI_math_bits_test.cc | |
parent | af77bf1f0f94cb07d5bf681d1f771d4106873780 (diff) |
Tests: move remaining gtests into their own module folders
And make them part of the blender_test runner. The one exception is blenlib
performance tests, which we don't want to run by default. They remain in their
own executable.
Differential Revision: https://developer.blender.org/D8498
Diffstat (limited to 'source/blender/blenlib/tests/BLI_math_bits_test.cc')
-rw-r--r-- | source/blender/blenlib/tests/BLI_math_bits_test.cc | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/source/blender/blenlib/tests/BLI_math_bits_test.cc b/source/blender/blenlib/tests/BLI_math_bits_test.cc new file mode 100644 index 00000000000..4fa4809beed --- /dev/null +++ b/source/blender/blenlib/tests/BLI_math_bits_test.cc @@ -0,0 +1,50 @@ +/* Apache License, Version 2.0 */ + +#include "BLI_math_bits.h" +#include "testing/testing.h" +#include <iostream> + +TEST(math_bits, BitscanReverseClearUint) +{ + uint a = 1234; + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 21); + EXPECT_EQ(a, 210); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 24); + EXPECT_EQ(a, 82); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 25); + EXPECT_EQ(a, 18); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 27); + EXPECT_EQ(a, 2); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 30); + EXPECT_EQ(a, 0); + + a = 3563987529; + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 0); + EXPECT_EQ(a, 1416503881); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 1); + EXPECT_EQ(a, 342762057); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 3); + EXPECT_EQ(a, 74326601); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 5); + EXPECT_EQ(a, 7217737); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 9); + EXPECT_EQ(a, 3023433); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 10); + EXPECT_EQ(a, 926281); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 12); + EXPECT_EQ(a, 401993); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 13); + EXPECT_EQ(a, 139849); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 14); + EXPECT_EQ(a, 8777); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 18); + EXPECT_EQ(a, 585); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 22); + EXPECT_EQ(a, 73); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 25); + EXPECT_EQ(a, 9); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 28); + EXPECT_EQ(a, 1); + EXPECT_EQ(bitscan_reverse_clear_uint(&a), 31); + EXPECT_EQ(a, 0); +} |