1 /*
2  * Copyright 2015 Google Inc.
3  *
4  * Use of this source code is governed by a BSD-style license that can be
5  * found in the LICENSE file.
6  */
7 
8 #include "SkTraceMemoryDump.h"
9 
10 #include "Test.h"
11 
12 /*
13  * Build test for SkTraceMemoryDump.
14  */
15 class TestSkTraceMemoryDump : public SkTraceMemoryDump {
16 public:
TestSkTraceMemoryDump()17     TestSkTraceMemoryDump() { }
~TestSkTraceMemoryDump()18     ~TestSkTraceMemoryDump() override { }
19 
dumpNumericValue(const char * dumpName,const char * valueName,const char * units,uint64_t value)20     void dumpNumericValue(const char* dumpName, const char* valueName, const char* units,
21                           uint64_t value) override { }
setMemoryBacking(const char * dumpName,const char * backingType,const char * backingObjectId)22     void setMemoryBacking(const char* dumpName, const char* backingType,
23                           const char* backingObjectId) override { }
setDiscardableMemoryBacking(const char * dumpName,const SkDiscardableMemory & discardableMemoryObject)24     void setDiscardableMemoryBacking(
25         const char* dumpName,
26         const SkDiscardableMemory& discardableMemoryObject) override { }
getRequestedDetails() const27     LevelOfDetail getRequestedDetails() const override {
28         return SkTraceMemoryDump::kObjectsBreakdowns_LevelOfDetail;
29     }
30 };
31 
DEF_TEST(SkTraceMemoryDump,reporter)32 DEF_TEST(SkTraceMemoryDump, reporter) {
33     TestSkTraceMemoryDump x;
34     x.dumpNumericValue("foobar", "size", "bytes", 42);
35     if (x.getRequestedDetails() == SkTraceMemoryDump::kObjectsBreakdowns_LevelOfDetail) {
36         x.dumpNumericValue("foobar/object1", "size", "bytes", 23);
37     }
38 }
39