aboutsummaryrefslogtreecommitdiff
path: root/src/base
diff options
context:
space:
mode:
Diffstat (limited to 'src/base')
-rw-r--r--src/base/CMakeLists.txt27
-rw-r--r--src/base/test/bottom_n_test.cpp27
-rw-r--r--src/base/test/type_traits_test.cpp2
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