1ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com/* 2ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Copyright 2011 Google Inc. 3ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * 4ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Use of this source code is governed by a BSD-style license that can be 5ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * found in the LICENSE file. 6ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com */ 7e4fafb146e85cdfcf9d5418597b6818aa0754adatfarina@chromium.org 86a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com#include "SkSize.h" 912345aee12daffe96dbc9c77056e797d91c78d3etfarina 108f6884aab8aecd7657cf3f9cdbc682f0deca29c5tfarina@chromium.org#include "Test.h" 116a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com 1212345aee12daffe96dbc9c77056e797d91c78d3etfarinaDEF_TEST(ISize, reporter) { 136a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com SkISize a, b; 14d6176b0dcacb124539e0cfd051e6d93a9782f020rmistry@google.com 156a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.set(0, 0); 166a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a.isEmpty()); 176a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.set(5, -5); 186a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a.isEmpty()); 196a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.clampNegToZero(); 206a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a.isEmpty()); 216a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com b.set(5, 0); 226a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a == b); 23d6176b0dcacb124539e0cfd051e6d93a9782f020rmistry@google.com 246a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.set(3, 5); 256a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, !a.isEmpty()); 266a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com b = a; 276a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, !b.isEmpty()); 286a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a == b); 296a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, !(a != b)); 306a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, 316a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.fWidth == b.fWidth && a.fHeight == b.fHeight); 326a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com} 336a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com 34e4fafb146e85cdfcf9d5418597b6818aa0754adatfarina@chromium.orgDEF_TEST(Size, reporter) { 356a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com SkSize a, b; 366a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com int ix = 5; 376a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com int iy = 3; 386a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com SkScalar x = SkIntToScalar(ix); 396a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com SkScalar y = SkIntToScalar(iy); 40d6176b0dcacb124539e0cfd051e6d93a9782f020rmistry@google.com 416a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.set(0, 0); 426a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a.isEmpty()); 436a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.set(x, -x); 446a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a.isEmpty()); 456a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.clampNegToZero(); 466a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a.isEmpty()); 476a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com b.set(x, 0); 486a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a == b); 49d6176b0dcacb124539e0cfd051e6d93a9782f020rmistry@google.com 506a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.set(y, x); 516a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, !a.isEmpty()); 526a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com b = a; 536a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, !b.isEmpty()); 546a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, a == b); 556a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, !(a != b)); 566a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com REPORTER_ASSERT(reporter, 576a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.fWidth == b.fWidth && a.fHeight == b.fHeight); 58d6176b0dcacb124539e0cfd051e6d93a9782f020rmistry@google.com 596a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com SkISize ia; 606a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com ia.set(ix, iy); 616a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3reed@android.com a.set(x, y); 62f59799139bacd300bf5251a1ca4e6b2ad3196457reed@android.com REPORTER_ASSERT(reporter, a.toRound() == ia); 63e4fafb146e85cdfcf9d5418597b6818aa0754adatfarina@chromium.org} 64