| Index: tests/DiscardableMemoryTest.cpp
|
| diff --git a/tests/DiscardableMemoryTest.cpp b/tests/DiscardableMemoryTest.cpp
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..1fbc28478f091d75f93e70e14ad44ea4f4f035eb
|
| --- /dev/null
|
| +++ b/tests/DiscardableMemoryTest.cpp
|
| @@ -0,0 +1,34 @@
|
| +/*
|
| + * Copyright 2013 Google Inc.
|
| + *
|
| + * Use of this source code is governed by a BSD-style license that can be
|
| + * found in the LICENSE file.
|
| + */
|
| +
|
| +#include "SkDiscardableMemory.h"
|
| +
|
| +#include "Test.h"
|
| +#include "TestClassDef.h"
|
| +
|
| +DEF_TEST(DiscardableMemory, reporter) {
|
| + const char testString[] = "HELLO, WORLD!";
|
| + const size_t len = sizeof(testString);
|
| + SkAutoTDelete<SkDiscardableMemory> dm(SkDiscardableMemory::Create(len));
|
| + REPORTER_ASSERT(reporter, dm.get() != NULL);
|
| + if (NULL == dm.get()) {
|
| + return;
|
| + }
|
| + void* ptr = dm->data();
|
| + REPORTER_ASSERT(reporter, ptr != NULL);
|
| + memcpy(ptr, testString, sizeof(testString));
|
| + dm->unlock();
|
| + bool success = dm->lock();
|
| + REPORTER_ASSERT(reporter, success);
|
| + if (!success) {
|
| + return;
|
| + }
|
| + ptr = dm->data();
|
| + REPORTER_ASSERT(reporter, 0 == memcmp(ptr, testString, len));
|
| + dm->unlock();
|
| +}
|
| +
|
|
|