// Unit tests for DitherEffect.
+//
+// Note: Dithering of multiple outputs is tested (somewhat weakly)
+// in YCbCrConversionEffectTest.
+#include <epoxy/gl.h>
#include <math.h>
-#include "test_util.h"
+#include "effect_chain.h"
#include "gtest/gtest.h"
+#include "image_format.h"
+#include "test_util.h"
+#include "util.h"
+
+namespace movit {
TEST(DitherEffectTest, NoDitherOnExactValues) {
const int size = 4;
unsigned char out_data[size * size];
EffectChainTester tester(data, size, size, FORMAT_GRAYSCALE, COLORSPACE_sRGB, GAMMA_LINEAR, GL_RGBA8);
+ check_error();
tester.get_chain()->set_dither_bits(8);
+ check_error();
tester.run(out_data, GL_RED, COLORSPACE_sRGB, GAMMA_LINEAR);
+ check_error();
expect_equal(expected_data, out_data, size, size);
}
EXPECT_NEAR(amplitude, sum / (size * 255.0f), 1.1e-5);
}
+
+} // namespace movit