aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/SkGaussFilterTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/SkGaussFilterTest.cpp')
-rw-r--r--tests/SkGaussFilterTest.cpp18
1 files changed, 12 insertions, 6 deletions
diff --git a/tests/SkGaussFilterTest.cpp b/tests/SkGaussFilterTest.cpp
index 2fdf4ac573..149260b3a3 100644
--- a/tests/SkGaussFilterTest.cpp
+++ b/tests/SkGaussFilterTest.cpp
@@ -32,9 +32,12 @@ DEF_TEST(SkGaussFilterCommon, r) {
double sigma; SkGaussFilter::Type type; std::vector<double> golden;
std::tie(sigma, type, golden) = test;
SkGaussFilter filter{sigma, type};
- double result[5];
- size_t n = filter.filterDouble(result);
- REPORTER_ASSERT(r, n == golden.size());
+ double result[SkGaussFilter::kGaussArrayMax];
+ int n = 0;
+ for (auto d : filter) {
+ result[n++] = d;
+ }
+ REPORTER_ASSERT(r, static_cast<size_t>(n) == golden.size());
double sum = careful_add(n, result);
REPORTER_ASSERT(r, sum == 1.0);
for (size_t i = 0; i < golden.size(); i++) {
@@ -70,9 +73,12 @@ DEF_TEST(SkGaussFilterSweep, r) {
const double maxSigma = nextafter(2.0, 0.0);
auto check = [&](double sigma, SkGaussFilter::Type type) {
SkGaussFilter filter{sigma, type};
- double result[5];
- int n = filter.filterDouble(result);
- REPORTER_ASSERT(r, n <= 5);
+ double result[SkGaussFilter::kGaussArrayMax];
+ int n = 0;
+ for (auto d : filter) {
+ result[n++] = d;
+ }
+ REPORTER_ASSERT(r, n <= SkGaussFilter::kGaussArrayMax);
double sum = careful_add(n, result);
REPORTER_ASSERT(r, sum == 1.0);
};