diff options
Diffstat (limited to 'src/base')
-rw-r--r-- | src/base/CMakeLists.txt | 27 | ||||
-rw-r--r-- | src/base/test/bottom_n_test.cpp | 27 | ||||
-rw-r--r-- | src/base/test/type_traits_test.cpp | 2 |
3 files changed, 47 insertions, 9 deletions
diff --git a/src/base/CMakeLists.txt b/src/base/CMakeLists.txt new file mode 100644 index 0000000..2cd27ae --- /dev/null +++ b/src/base/CMakeLists.txt @@ -0,0 +1,27 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License Version 2.0 (the License); you may not use +# this file except in compliance with the License. You may obtain a copy of the +# License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing software distributed +# under the License is distributed on an AS IS BASIS WITHOUT WARRANTIES OR +# CONDITIONS OF ANY KIND either express or implied. See the License for the +# specific language governing permissions and limitations under the License. +add_library(base INTERFACE) +target_include_directories(base INTERFACE ../..) + +if(OPTION_ASTC_TESTS) + add_executable(base_test + test/bit_stream_test.cpp + test/bottom_n_test.cpp + test/math_utils_test.cpp + test/optional_test.cpp + test/string_utils_test.cpp + test/type_traits_test.cpp + test/uint128_test.cpp) + target_link_libraries(base_test base gmock_main) + add_test(base_test base_test) +endif() diff --git a/src/base/test/bottom_n_test.cpp b/src/base/test/bottom_n_test.cpp index 76f0123..71265d7 100644 --- a/src/base/test/bottom_n_test.cpp +++ b/src/base/test/bottom_n_test.cpp @@ -33,7 +33,8 @@ TEST(BottomN, Sort) { { BottomN<int> heap(10); EXPECT_TRUE(heap.Empty()); - pushAll(heap, (int[]){1, 2}); + int list[] = { 1,2 }; + pushAll(heap, list); EXPECT_EQ(heap.Size(), 2); EXPECT_FALSE(heap.Empty()); @@ -42,7 +43,8 @@ TEST(BottomN, Sort) { { BottomN<int> heap(6); - pushAll(heap, (int[]){1, 4, 3, 2, 2, 1}); + int list[] = {1, 4, 3, 2, 2, 1}; + pushAll(heap, list); EXPECT_EQ(heap.Size(), 6); EXPECT_THAT(heap.Pop(), ElementsAre(1, 1, 2, 2, 3, 4)); @@ -52,7 +54,8 @@ TEST(BottomN, Sort) { TEST(BottomN, Bounds) { { BottomN<int> heap(4); - pushAll(heap, (int[]){1, 2, 3, 4}); + int list[] = { 1, 2, 3, 4 }; + pushAll(heap, list); EXPECT_EQ(heap.Size(), 4); heap.Push(0); @@ -63,10 +66,12 @@ TEST(BottomN, Bounds) { { BottomN<int> heap(4); - pushAll(heap, (int[]){4, 3, 2, 1}); + int list[] = { 4, 3, 2,1 }; + pushAll(heap, list); EXPECT_EQ(heap.Size(), 4); - pushAll(heap, (int[]){4, 4, 4, 4}); + int list2[] = { 4,4,4,4 }; + pushAll(heap, list2); EXPECT_EQ(heap.Size(), 4); EXPECT_THAT(heap.Pop(), ElementsAre(1, 2, 3, 4)); @@ -74,10 +79,12 @@ TEST(BottomN, Bounds) { { BottomN<int> heap(4); - pushAll(heap, (int[]){4, 3, 2, 1}); + int list[] = { 4, 3, 2, 1 }; + pushAll(heap, list); EXPECT_EQ(heap.Size(), 4); - pushAll(heap, (int[]){5, 5, 5, 5}); + int list2[] = { 5, 5, 5, 5 }; + pushAll(heap, list2); EXPECT_EQ(heap.Size(), 4); EXPECT_THAT(heap.Pop(), ElementsAre(1, 2, 3, 4)); @@ -85,10 +92,12 @@ TEST(BottomN, Bounds) { { BottomN<int> heap(4); - pushAll(heap, (int[]){4, 3, 2, 1}); + int list[] = { 4, 3, 2, 1 }; + pushAll(heap, list); EXPECT_EQ(heap.Size(), 4); - pushAll(heap, (int[]){0, 0, 0, 0}); + int list2[] = { 0, 0, 0, 0 }; + pushAll(heap, list2); EXPECT_EQ(heap.Size(), 4); EXPECT_THAT(heap.Pop(), ElementsAre(0, 0, 0, 0)); diff --git a/src/base/test/type_traits_test.cpp b/src/base/test/type_traits_test.cpp index b858c01..c724cbe 100644 --- a/src/base/test/type_traits_test.cpp +++ b/src/base/test/type_traits_test.cpp @@ -105,6 +105,7 @@ TEST(TypeTraits, IsTemplateInstantiation) { "nested std::vector<> is an instance of vector"); } +#ifndef _MSC_VER TEST(TypeTraits, IsRange) { static_assert(is_range<std::vector<int>>::value, "vector<> should be detected as a range"); @@ -123,6 +124,7 @@ TEST(TypeTraits, IsRange) { static_assert(!is_range<const int*>::value, "even const int* shouldn't be a range"); } +#endif } // namespace base } // namespace astc_codec |