Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(68)

Unified Diff: tests/Sk64Test.cpp

Issue 136673002: remove remaining references to Sk64 (obsolete) (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/utils/SkCullPoints.cpp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/Sk64Test.cpp
diff --git a/tests/Sk64Test.cpp b/tests/Sk64Test.cpp
deleted file mode 100644
index d668e5454d69eb75c774a706db60398440353212..0000000000000000000000000000000000000000
--- a/tests/Sk64Test.cpp
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "Test.h"
-#include "TestClassDef.h"
-#include "Sk64.h"
-#include "SkRandom.h"
-#include <math.h>
-
-struct BoolTable {
- int8_t zero, pos, neg, toBool, sign;
-};
-
-static void bool_table_test(skiatest::Reporter* reporter,
- const Sk64& a, const BoolTable& table)
-{
- REPORTER_ASSERT(reporter, a.isZero() != a.nonZero());
-
- REPORTER_ASSERT(reporter, !a.isZero() == !table.zero);
- REPORTER_ASSERT(reporter, !a.isPos() == !table.pos);
- REPORTER_ASSERT(reporter, !a.isNeg() == !table.neg);
- REPORTER_ASSERT(reporter, a.getSign() == table.sign);
-}
-
-void Sk64::UnitTestWithReporter(void* reporterParam) {
- skiatest::Reporter* reporter = (skiatest::Reporter*)reporterParam;
-
- enum BoolTests {
- kZero_BoolTest,
- kPos_BoolTest,
- kNeg_BoolTest
- };
- static const BoolTable gBoolTable[] = {
- { 1, 0, 0, 0, 0 },
- { 0, 1, 0, 1, 1 },
- { 0, 0, 1, 1, -1 }
- };
-
- Sk64 a, b, c;
-
- a.fHi = a.fLo = 0;
- b.set(0);
- c.setZero();
- REPORTER_ASSERT(reporter, a == b);
- REPORTER_ASSERT(reporter, a == c);
- bool_table_test(reporter, a, gBoolTable[kZero_BoolTest]);
-
- a.fHi = 0; a.fLo = 5;
- b.set(5);
- REPORTER_ASSERT(reporter, a == b);
- REPORTER_ASSERT(reporter, a.is32() && a.get32() == 5 && !a.is64());
- bool_table_test(reporter, a, gBoolTable[kPos_BoolTest]);
-
- a.fHi = -1; a.fLo = (uint32_t)-5;
- b.set(-5);
- REPORTER_ASSERT(reporter, a == b);
- REPORTER_ASSERT(reporter, a.is32() && a.get32() == -5 && !a.is64());
- bool_table_test(reporter, a, gBoolTable[kNeg_BoolTest]);
-
- a.setZero();
- b.set(6);
- c.set(-6);
- REPORTER_ASSERT(reporter, a != b && b != c && a != c);
- REPORTER_ASSERT(reporter, !(a == b) && !(a == b) && !(a == b));
- REPORTER_ASSERT(reporter, a < b && b > a && a <= b && b >= a);
- REPORTER_ASSERT(reporter, c < a && a > c && c <= a && a >= c);
- REPORTER_ASSERT(reporter, c < b && b > c && c <= b && b >= c);
-
- // Now test add/sub
-
- SkRandom rand;
- int i;
-
- for (i = 0; i < 1000; i++)
- {
- int aa = rand.nextS() >> 1;
- int bb = rand.nextS() >> 1;
- a.set(aa);
- b.set(bb);
- REPORTER_ASSERT(reporter, a.get32() == aa && b.get32() == bb);
- c = a; c.add(bb);
- REPORTER_ASSERT(reporter, c.get32() == aa + bb);
- c = a; c.add(-bb);
- REPORTER_ASSERT(reporter, c.get32() == aa - bb);
- c = a; c.add(b);
- REPORTER_ASSERT(reporter, c.get32() == aa + bb);
- c = a; c.sub(b);
- REPORTER_ASSERT(reporter, c.get32() == aa - bb);
- }
-
- for (i = 0; i < 1000; i++) {
- a.set64(rand.next64());
- b.set64(rand.next64());
-
- if (!(i & 3)) // want to explicitly test these cases
- {
- a.fLo = 0;
- b.fLo = 0;
- }
- else if (!(i & 7)) // want to explicitly test these cases
- {
- a.fHi = 0;
- b.fHi = 0;
- }
-
- int64_t aa = a.as64();
- int64_t bb = b.as64();
-
- REPORTER_ASSERT(reporter, (a < b) == (aa < bb));
- REPORTER_ASSERT(reporter, (a <= b) == (aa <= bb));
- REPORTER_ASSERT(reporter, (a > b) == (aa > bb));
- REPORTER_ASSERT(reporter, (a >= b) == (aa >= bb));
- REPORTER_ASSERT(reporter, (a == b) == (aa == bb));
- REPORTER_ASSERT(reporter, (a != b) == (aa != bb));
-
- c = a; c.add(b);
- REPORTER_ASSERT(reporter, c.as64() == aa + bb);
- c = a; c.sub(b);
- REPORTER_ASSERT(reporter, c.as64() == aa - bb);
- c = a; c.rsub(b);
- REPORTER_ASSERT(reporter, c.as64() == bb - aa);
- c = a; c.negate();
- REPORTER_ASSERT(reporter, c.as64() == -aa);
-
- int bits = rand.nextU() & 63;
- c = a; c.shiftLeft(bits);
- REPORTER_ASSERT(reporter, c.as64() == (aa << bits));
- c = a; c.shiftRight(bits);
- REPORTER_ASSERT(reporter, c.as64() == (aa >> bits));
- c = a; c.roundRight(bits);
-
- int64_t tmp;
-
- tmp = aa;
- if (bits > 0)
- tmp += (int64_t)1 << (bits - 1);
- REPORTER_ASSERT(reporter, c.as64() == (tmp >> bits));
-
- c.setMul(a.fHi, b.fHi);
- tmp = (int64_t)a.fHi * b.fHi;
- REPORTER_ASSERT(reporter, c.as64() == tmp);
- }
-
-
- for (i = 0; i < 100000; i++)
- {
- Sk64 wide;
- int32_t denom = rand.nextS();
-
- while (denom == 0)
- denom = rand.nextS();
- wide.setMul(rand.nextS(), rand.nextS());
- int64_t check = wide.getLongLong();
-
- wide.div(denom, Sk64::kTrunc_DivOption);
- check /= denom;
- int64_t w = wide.getLongLong();
-
- REPORTER_ASSERT(reporter, check == w);
-
- wide.setMul(rand.nextS(), rand.nextS());
- wide.abs();
- denom = wide.getSqrt();
- int32_t ck = (int32_t)sqrt((double)wide.getLongLong());
- int diff = denom - ck;
- REPORTER_ASSERT(reporter, SkAbs32(diff) <= 1);
- }
-}
-
-DEF_TEST(Sk64Test, reporter) {
- Sk64::UnitTestWithReporter(reporter);
-}
« no previous file with comments | « src/utils/SkCullPoints.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698