GTests: were using C++11 feature
authorCampbell Barton <ideasman42@gmail.com>
Tue, 19 Jan 2016 09:44:57 +0000 (20:44 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Tue, 19 Jan 2016 09:44:57 +0000 (20:44 +1100)
tests/gtests/blenlib/BLI_array_utils_test.cc
tests/gtests/testing/testing.h

index 596c3976819a4601c7f0ee05198fe64ae72dd0bb..e532419691a005e5ef8ea326cbfe73a2eb583e73 100644 (file)
@@ -34,10 +34,10 @@ TEST(array_utils, ReverseString4)
 
 TEST(array_utils, ReverseInt4)
 {
-       const std::vector<int> data_cmp  = {3, 2, 1, 0};
-       std::vector<int> data            = {0, 1, 2, 3};
-       BLI_array_reverse(data.data(), data.size());
-       EXPECT_EQ(data, data_cmp);
+       const int data_cmp[] = {3, 2, 1, 0};
+       int data[]           = {0, 1, 2, 3};
+       BLI_array_reverse(data, ARRAY_SIZE(data));
+       EXPECT_EQ_ARRAY(data_cmp, data, ARRAY_SIZE(data));
 }
 
 /* BLI_array_findindex */
@@ -72,49 +72,49 @@ TEST(array_utils, FindIndexInt4)
 }
 
 /* BLI_array_binary_and */
-#define BINARY_AND_TEST(data_cmp, data_a, data_b, data_combine) \
+#define BINARY_AND_TEST(data_cmp, data_a, data_b, data_combine, length) \
 { \
-       data_combine.resize(data_cmp.size()); \
-       BLI_array_binary_and(data_combine.data(), data_a.data(), data_b.data(), data_cmp.size()); \
-       EXPECT_EQ(data_combine, data_cmp); \
+       BLI_array_binary_and(data_combine, data_a, data_b, length); \
+       EXPECT_EQ_ARRAY(data_cmp, data_combine, length); \
 } ((void)0)
 
 TEST(array_utils, BinaryAndInt4Zero)
 {
-       std::vector<int> data_a = {0, 1, 0, 1}, data_b = {1, 0, 1, 0}, data_cmp = {0, 0, 0, 0};
-       std::vector<int> data_combine;
-       BINARY_AND_TEST(data_cmp, data_a, data_b, data_combine);
+       const int data_cmp[] = {0, 0, 0, 0};
+       int data_a[] = {0, 1, 0, 1}, data_b[] = {1, 0, 1, 0};
+       int data_combine[ARRAY_SIZE(data_cmp)];
+       BINARY_AND_TEST(data_cmp, data_a, data_b, data_combine, ARRAY_SIZE(data_cmp));
 }
 
 TEST(array_utils, BinaryAndInt4Mix)
 {
-       std::vector<int> data_a = {1, 1, 1, 1}, data_b = {1, 0, 1, 0}, data_cmp = {1, 0, 1, 0};
-       std::vector<int> data_combine;
-       BINARY_AND_TEST(data_cmp, data_a, data_b, data_combine);
+       const int data_cmp[] = {1, 0, 1, 0};
+       int data_a[] = {1, 1, 1, 1}, data_b[] = {1, 0, 1, 0};
+       int data_combine[ARRAY_SIZE(data_cmp)];
+       BINARY_AND_TEST(data_cmp, data_a, data_b, data_combine, ARRAY_SIZE(data_cmp));
 }
 #undef BINARY_AND_TEST
 
 
 /* BLI_array_binary_or */
-#define BINARY_OR_TEST(data_cmp, data_a, data_b, data_combine) \
-       { \
-               data_combine.resize(data_cmp.size()); \
-               BLI_array_binary_or(data_combine.data(), data_a.data(), data_b.data(), data_cmp.size()); \
-               EXPECT_EQ(data_combine, data_cmp); \
-       } ((void)0)
+#define BINARY_OR_TEST(data_cmp, data_a, data_b, data_combine, length) \
+{ \
+       BLI_array_binary_or(data_combine, data_a, data_b, length); \
+       EXPECT_EQ_ARRAY(data_combine, data_cmp, length); \
+} ((void)0)
 
 TEST(array_utils, BinaryOrInt4Alternate)
 {
-       std::vector<int> data_a = {0, 1, 0, 1}, data_b = {1, 0, 1, 0}, data_cmp = {1, 1, 1, 1};
-       std::vector<int> data_combine;
-       BINARY_OR_TEST(data_cmp, data_a, data_b, data_combine);
+       int data_a[] = {0, 1, 0, 1}, data_b[] = {1, 0, 1, 0}, data_cmp[] = {1, 1, 1, 1};
+       int data_combine[ARRAY_SIZE(data_cmp)];
+       BINARY_OR_TEST(data_cmp, data_a, data_b, data_combine, ARRAY_SIZE(data_cmp));
 }
 
 TEST(array_utils, BinaryOrInt4Mix)
 {
-       std::vector<int> data_a = {1, 1, 0, 0}, data_b = {0, 0, 1, 0}, data_cmp = {1, 1, 1, 0};
-       std::vector<int> data_combine;
-       BINARY_OR_TEST(data_cmp, data_a, data_b, data_combine);
+       int data_a[] = {1, 1, 0, 0}, data_b[] = {0, 0, 1, 0}, data_cmp[] = {1, 1, 1, 0};
+       int data_combine[ARRAY_SIZE(data_cmp)];
+       BINARY_OR_TEST(data_cmp, data_a, data_b, data_combine, ARRAY_SIZE(data_cmp));
 }
 #undef BINARY_OR_TEST
 
index 9083654f1d5436215f197ec6562a3dd0b1783664..b0a6379e5c080db48215a418b1d1b01f246f7ada 100644 (file)
@@ -75,4 +75,11 @@ double CosinusBetweenMatrices(const TMat &a, const TMat &b) {
 }
 #endif
 
+template <typename T>
+inline void EXPECT_EQ_ARRAY(const T *expected, T *actual, const size_t N) {
+  for(size_t i = 0; i < N; ++i) {
+    EXPECT_EQ(expected[i], actual[i]);
+  }
+}
+
 #endif  // __BLENDER_TESTING_H__