aboutsummaryrefslogtreecommitdiff
path: root/src/utils/segmentation_test.cc
diff options
context:
space:
mode:
authorBoyuan Yang <byang@debian.org>2021-11-07 08:50:20 -0500
committerBoyuan Yang <byang@debian.org>2021-11-07 08:50:20 -0500
commit513fcf1cd0dca1a6cbef9ff6e38e22237e75ba44 (patch)
tree249280ac94eb2b871de89cd1b166fff4ee00ab09 /src/utils/segmentation_test.cc
parent3c21ceac2f6a5adfab07d3d458880561543d0a31 (diff)
parent320ef65362608ee1148c299d8d5d7618af34e470 (diff)
downloadlibgav1-513fcf1cd0dca1a6cbef9ff6e38e22237e75ba44.tar.gz
libgav1-513fcf1cd0dca1a6cbef9ff6e38e22237e75ba44.tar.bz2
libgav1-513fcf1cd0dca1a6cbef9ff6e38e22237e75ba44.zip
Update upstream source from tag 'upstream/0.17.0'
Update to upstream version '0.17.0' with Debian dir 5b612b6a2d67788b0c85bac59e50edc1545bfd7e
Diffstat (limited to 'src/utils/segmentation_test.cc')
-rw-r--r--src/utils/segmentation_test.cc40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/utils/segmentation_test.cc b/src/utils/segmentation_test.cc
new file mode 100644
index 0000000..e985b2d
--- /dev/null
+++ b/src/utils/segmentation_test.cc
@@ -0,0 +1,40 @@
+// Copyright 2021 The libgav1 Authors
+//
+// 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 "src/utils/segmentation.h"
+
+#include <cstdint>
+
+#include "gtest/gtest.h"
+#include "src/utils/common.h"
+#include "src/utils/types.h"
+
+namespace libgav1 {
+namespace {
+
+int GetUnsignedBits(const unsigned int num_values) {
+ return (num_values > 0) ? FloorLog2(num_values) + 1 : 0;
+}
+
+// Check that kSegmentationFeatureBits and kSegmentationFeatureMaxValues are
+// consistent with each other.
+TEST(SegmentationTest, FeatureBitsAndMaxValuesConsistency) {
+ for (int feature = 0; feature < kSegmentFeatureMax; feature++) {
+ EXPECT_EQ(kSegmentationFeatureBits[feature],
+ GetUnsignedBits(kSegmentationFeatureMaxValues[feature]));
+ }
+}
+
+} // namespace
+} // namespace libgav1