diff options
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-tools/test/util/bit_vector_test.cpp')
-rw-r--r-- | 3rdparty/bgfx/3rdparty/spirv-tools/test/util/bit_vector_test.cpp | 164 |
1 files changed, 0 insertions, 164 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-tools/test/util/bit_vector_test.cpp b/3rdparty/bgfx/3rdparty/spirv-tools/test/util/bit_vector_test.cpp deleted file mode 100644 index 8d967f8f93d..00000000000 --- a/3rdparty/bgfx/3rdparty/spirv-tools/test/util/bit_vector_test.cpp +++ /dev/null @@ -1,164 +0,0 @@ -// Copyright (c) 2017 Google Inc. -// -// 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 -// -// http://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. - -#include <vector> - -#include "gmock/gmock.h" - -#include "source/util/bit_vector.h" - -namespace spvtools { -namespace utils { -namespace { - -using BitVectorTest = ::testing::Test; - -TEST(BitVectorTest, Initialize) { - BitVector bvec; - - // Checks that all values are 0. Also tests checking a bit past the end of - // the vector containing the bits. - for (int i = 1; i < 10000; i *= 2) { - EXPECT_FALSE(bvec.Get(i)); - } -} - -TEST(BitVectorTest, Set) { - BitVector bvec; - - // Since 10,000 is larger than the initial size, this tests the resizing - // code. - for (int i = 3; i < 10000; i *= 2) { - bvec.Set(i); - } - - // Check that bits that were not set are 0. - for (int i = 1; i < 10000; i *= 2) { - EXPECT_FALSE(bvec.Get(i)); - } - - // Check that bits that were set are 1. - for (int i = 3; i < 10000; i *= 2) { - EXPECT_TRUE(bvec.Get(i)); - } -} - -TEST(BitVectorTest, SetReturnValue) { - BitVector bvec; - - // Make sure |Set| returns false when the bit was not set. - for (int i = 3; i < 10000; i *= 2) { - EXPECT_FALSE(bvec.Set(i)); - } - - // Make sure |Set| returns true when the bit was already set. - for (int i = 3; i < 10000; i *= 2) { - EXPECT_TRUE(bvec.Set(i)); - } -} - -TEST(BitVectorTest, Clear) { - BitVector bvec; - for (int i = 3; i < 10000; i *= 2) { - bvec.Set(i); - } - - // Check that the bits were properly set. - for (int i = 3; i < 10000; i *= 2) { - EXPECT_TRUE(bvec.Get(i)); - } - - // Clear all of the bits except for bit 3. - for (int i = 6; i < 10000; i *= 2) { - bvec.Clear(i); - } - - // Make sure bit 3 was not cleared. - EXPECT_TRUE(bvec.Get(3)); - - // Make sure all of the other bits that were set have been cleared. - for (int i = 6; i < 10000; i *= 2) { - EXPECT_FALSE(bvec.Get(i)); - } -} - -TEST(BitVectorTest, ClearReturnValue) { - BitVector bvec; - for (int i = 3; i < 10000; i *= 2) { - bvec.Set(i); - } - - // Make sure |Clear| returns true if the bit was set. - for (int i = 3; i < 10000; i *= 2) { - EXPECT_TRUE(bvec.Clear(i)); - } - - // Make sure |Clear| returns false if the bit was not set. - for (int i = 3; i < 10000; i *= 2) { - EXPECT_FALSE(bvec.Clear(i)); - } -} - -TEST(BitVectorTest, SimpleOrTest) { - BitVector bvec1; - bvec1.Set(3); - bvec1.Set(4); - - BitVector bvec2; - bvec2.Set(2); - bvec2.Set(4); - - // Check that |bvec1| changed when doing the |Or| operation. - EXPECT_TRUE(bvec1.Or(bvec2)); - - // Check that the values are all correct. - EXPECT_FALSE(bvec1.Get(0)); - EXPECT_FALSE(bvec1.Get(1)); - EXPECT_TRUE(bvec1.Get(2)); - EXPECT_TRUE(bvec1.Get(3)); - EXPECT_TRUE(bvec1.Get(4)); -} - -TEST(BitVectorTest, ResizingOrTest) { - BitVector bvec1; - bvec1.Set(3); - bvec1.Set(4); - - BitVector bvec2; - bvec2.Set(10000); - - // Similar to above except with a large value to test resizing. - EXPECT_TRUE(bvec1.Or(bvec2)); - EXPECT_FALSE(bvec1.Get(0)); - EXPECT_FALSE(bvec1.Get(1)); - EXPECT_FALSE(bvec1.Get(2)); - EXPECT_TRUE(bvec1.Get(3)); - EXPECT_TRUE(bvec1.Get(10000)); -} - -TEST(BitVectorTest, SubsetOrTest) { - BitVector bvec1; - bvec1.Set(3); - bvec1.Set(4); - - BitVector bvec2; - bvec2.Set(3); - - // |Or| returns false if |bvec1| does not change. - EXPECT_FALSE(bvec1.Or(bvec2)); -} - -} // namespace -} // namespace utils -} // namespace spvtools |