summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/acm_random.h48
-rw-r--r--test/boolcoder_test.cc18
-rw-r--r--test/fdct4x4_test.cc18
-rw-r--r--test/sixtap_predict_test.cc18
-rw-r--r--test/test.mk1
5 files changed, 57 insertions, 46 deletions
diff --git a/test/acm_random.h b/test/acm_random.h
new file mode 100644
index 000000000..b631eeb30
--- /dev/null
+++ b/test/acm_random.h
@@ -0,0 +1,48 @@
+/*
+ * Copyright (c) 2012 The WebM project authors. All Rights Reserved.
+ *
+ * Use of this source code is governed by a BSD-style license
+ * that can be found in the LICENSE file in the root of the source
+ * tree. An additional intellectual property rights grant can be found
+ * in the file PATENTS. All contributing project authors may
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
+#ifndef LIBVPX_TEST_ACM_RANDOM_H_
+#define LIBVPX_TEST_ACM_RANDOM_H_
+
+#include <stdint.h>
+#include <stdlib.h>
+
+namespace libvpx_test {
+
+class ACMRandom {
+ public:
+ explicit ACMRandom(int seed) {
+ Reset(seed);
+ }
+
+ void Reset(int seed) {
+ srand(seed);
+ }
+
+ uint8_t Rand8(void) {
+ return (rand() >> 8) & 0xff;
+ }
+
+ int PseudoUniform(int range) {
+ return (rand() >> 8) % range;
+ }
+
+ int operator()(int n) {
+ return PseudoUniform(n);
+ }
+
+ static int DeterministicSeed(void) {
+ return 0xbaba;
+ }
+};
+
+} // namespace libvpx_test
+
+#endif // LIBVPX_TEST_ACM_RANDOM_H_
diff --git a/test/boolcoder_test.cc b/test/boolcoder_test.cc
index 41c2f7b9b..4e21be8c5 100644
--- a/test/boolcoder_test.cc
+++ b/test/boolcoder_test.cc
@@ -20,28 +20,16 @@ extern "C" {
#include <string.h>
#include <sys/types.h>
+#include "test/acm_random.h"
#include "third_party/googletest/src/include/gtest/gtest.h"
#include "vpx/vpx_integer.h"
namespace {
const int num_tests = 10;
-
-class ACMRandom {
- public:
- explicit ACMRandom(int seed) { Reset(seed); }
-
- void Reset(int seed) { srand(seed); }
-
- uint8_t Rand8(void) { return (rand() >> 8) & 0xff; }
-
- int PseudoUniform(int range) { return (rand() >> 8) % range; }
-
- int operator()(int n) { return PseudoUniform(n); }
-
- static int DeterministicSeed(void) { return 0xbaba; }
-};
} // namespace
+using libvpx_test::ACMRandom;
+
TEST(VP8, TestBitIO) {
ACMRandom rnd(ACMRandom::DeterministicSeed());
for (int n = 0; n < num_tests; ++n) {
diff --git a/test/fdct4x4_test.cc b/test/fdct4x4_test.cc
index 8a2646a63..619b23d22 100644
--- a/test/fdct4x4_test.cc
+++ b/test/fdct4x4_test.cc
@@ -21,6 +21,7 @@ extern "C" {
#include "vpx_rtcd.h"
}
+#include "test/acm_random.h"
#include "third_party/googletest/src/include/gtest/gtest.h"
#include "vpx/vpx_integer.h"
@@ -70,22 +71,7 @@ void reference_idct4x4(const int16_t *input, int16_t *output) {
}
}
-// This is a class that generate random numbers for test input.
-class ACMRandom {
-public:
- explicit ACMRandom(int seed) { Reset(seed); }
-
- void Reset(int seed) { srand(seed); }
-
- uint8_t Rand8(void) { return (rand() >> 8) & 0xff; }
-
- int PseudoUniform(int range) { return (rand() >> 8) % range; }
-
- int operator()(int n) { return PseudoUniform(n); }
-
- static int DeterministicSeed(void) { return 0xbaba; }
-};
-
+using libvpx_test::ACMRandom;
TEST(Vp8FdctTest, SignBiasCheck) {
ACMRandom rnd(ACMRandom::DeterministicSeed());
diff --git a/test/sixtap_predict_test.cc b/test/sixtap_predict_test.cc
index 8ab8aa686..f29414e23 100644
--- a/test/sixtap_predict_test.cc
+++ b/test/sixtap_predict_test.cc
@@ -11,6 +11,7 @@
#include <math.h>
#include <stdlib.h>
#include <string.h>
+#include "test/acm_random.h"
#include "test/util.h"
#include "third_party/googletest/src/include/gtest/gtest.h"
extern "C" {
@@ -22,21 +23,6 @@ extern "C" {
namespace {
-class ACMRandom {
- public:
- explicit ACMRandom(int seed) { Reset(seed); }
-
- void Reset(int seed) { srand(seed); }
-
- uint8_t Rand8(void) { return (rand() >> 8) & 0xff; }
-
- int PseudoUniform(int range) { return (rand() >> 8) % range; }
-
- int operator()(int n) { return PseudoUniform(n); }
-
- static int DeterministicSeed(void) { return 0xbaba; }
-};
-
typedef void (*sixtap_predict_fn_t)(uint8_t *src_ptr,
int src_pixels_per_line,
int xoffset,
@@ -139,6 +125,8 @@ TEST_P(SixtapPredictTest, TestWithPresetData) {
<< "i==" << (i * width_ + j);
}
+using libvpx_test::ACMRandom;
+
TEST_P(SixtapPredictTest, TestWithRandomData) {
const size_t src_size = sizeof(src_) / sizeof(uint8_t);
diff --git a/test/test.mk b/test/test.mk
index 2ca246485..15bd79314 100644
--- a/test/test.mk
+++ b/test/test.mk
@@ -1,3 +1,4 @@
+LIBVPX_TEST_SRCS-yes += acm_random.h
LIBVPX_TEST_SRCS-yes += test.mk
LIBVPX_TEST_SRCS-yes += test_libvpx.cc
LIBVPX_TEST_SRCS-yes += util.h