/* * Copyright 2010 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ // This is a GPU-backend specific test #if SK_SUPPORT_GPU #include "GrBinHashKey.h" #include "Test.h" DEF_TEST(GrBinHashKey, reporter) { const char* testStringA_ = "abcdABCD"; const char* testStringB_ = "abcdBBCD"; const uint32_t* testStringA = reinterpret_cast(testStringA_); const uint32_t* testStringB = reinterpret_cast(testStringB_); enum { kDataLenUsedForKey = 8 }; GrBinHashKey keyA; keyA.setKeyData(testStringA); // test copy constructor and comparison GrBinHashKey keyA2(keyA); REPORTER_ASSERT(reporter, keyA == keyA2); REPORTER_ASSERT(reporter, keyA.getHash() == keyA2.getHash()); // test re-init keyA2.setKeyData(testStringA); REPORTER_ASSERT(reporter, keyA == keyA2); REPORTER_ASSERT(reporter, keyA.getHash() == keyA2.getHash()); // test sorting GrBinHashKey keyB; keyB.setKeyData(testStringB); REPORTER_ASSERT(reporter, keyA < keyB); REPORTER_ASSERT(reporter, keyA.getHash() != keyB.getHash()); } #endif