Index: tests/GpuLayerCacheTest.cpp |
diff --git a/tests/GpuLayerCacheTest.cpp b/tests/GpuLayerCacheTest.cpp |
deleted file mode 100644 |
index 96f7af48ffcf0f110a70511b9856b91b5363732a..0000000000000000000000000000000000000000 |
--- a/tests/GpuLayerCacheTest.cpp |
+++ /dev/null |
@@ -1,136 +0,0 @@ |
-/* |
-* Copyright 2014 Google Inc. |
-* |
-* Use of this source code is governed by a BSD-style license that can be |
-* found in the LICENSE file. |
-*/ |
- |
-#if SK_SUPPORT_GPU |
- |
-#include "GrContext.h" |
-#include "GrContextFactory.h" |
-#include "GrLayerCache.h" |
-#include "Test.h" |
- |
-static const int kNumLayers = 5; |
- |
-class GetNumLayers { |
-public: |
- static int NumLayers(GrLayerCache* cache) { |
- return cache->numLayers(); |
- } |
-}; |
- |
-// Add several layers to the cache |
-static void create_layers(skiatest::Reporter* reporter, |
- GrLayerCache* cache, |
- const SkPicture& picture) { |
- GrCachedLayer* layers[kNumLayers]; |
- |
- for (int i = 0; i < kNumLayers; ++i) { |
- layers[i] = cache->findLayerOrCreate(&picture, i); |
- REPORTER_ASSERT(reporter, NULL != layers[i]); |
- GrCachedLayer* layer = cache->findLayer(&picture, i); |
- REPORTER_ASSERT(reporter, layer == layers[i]); |
- |
- REPORTER_ASSERT(reporter, GetNumLayers::NumLayers(cache) == i+1); |
- |
- REPORTER_ASSERT(reporter, picture.uniqueID() == layers[i]->pictureID()); |
- REPORTER_ASSERT(reporter, layers[i]->layerID() == i); |
- REPORTER_ASSERT(reporter, NULL == layers[i]->texture()); |
- REPORTER_ASSERT(reporter, layers[i]->rect().isEmpty()); |
- } |
- |
-} |
- |
-// This test case exercises the public API of the GrLayerCache class. |
-// In particular it checks its interaction with the resource cache (w.r.t. |
-// locking & unlocking textures). |
-// TODO: need to add checks on VRAM usage! |
-DEF_GPUTEST(GpuLayerCache, reporter, factory) { |
- |
- GrContext* context = factory->get(GrContextFactory::kNative_GLContextType); |
- if (NULL == context) { |
- return; |
- } |
- |
- SkPicture picture; |
- |
- GrLayerCache cache(context); |
- |
- create_layers(reporter, &cache, picture); |
- |
- // Lock the layers making them all 512x512 |
- GrTextureDesc desc; |
- desc.fWidth = 512; |
- desc.fHeight = 512; |
- desc.fConfig = kSkia8888_GrPixelConfig; |
- |
- for (int i = 0; i < kNumLayers; ++i) { |
- GrCachedLayer* layer = cache.findLayer(&picture, i); |
- REPORTER_ASSERT(reporter, NULL != layer); |
- |
- bool foundInCache = cache.lock(layer, desc); |
- REPORTER_ASSERT(reporter, !foundInCache); |
- foundInCache = cache.lock(layer, desc); |
- REPORTER_ASSERT(reporter, foundInCache); |
- |
- REPORTER_ASSERT(reporter, NULL != layer->texture()); |
-#if USE_ATLAS |
- // The first 4 layers should be in the atlas (and thus have non-empty |
- // rects) |
- if (i < 4) { |
- REPORTER_ASSERT(reporter, !layer->rect().isEmpty()); |
- } else { |
-#endif |
- REPORTER_ASSERT(reporter, layer->rect().isEmpty()); |
-#if USE_ATLAS |
- } |
-#endif |
- } |
- |
- // Unlock the textures |
- for (int i = 0; i < kNumLayers; ++i) { |
- GrCachedLayer* layer = cache.findLayer(&picture, i); |
- REPORTER_ASSERT(reporter, NULL != layer); |
- |
- cache.unlock(layer); |
- } |
- |
- for (int i = 0; i < kNumLayers; ++i) { |
- GrCachedLayer* layer = cache.findLayer(&picture, i); |
- REPORTER_ASSERT(reporter, NULL != layer); |
- |
-#if USE_ATLAS |
- // The first 4 layers should be in the atlas (and thus do not |
- // currently unlock). The final layer should be unlocked. |
- if (i < 4) { |
- REPORTER_ASSERT(reporter, NULL != layer->texture()); |
- REPORTER_ASSERT(reporter, !layer->rect().isEmpty()); |
- } else { |
-#endif |
- REPORTER_ASSERT(reporter, NULL == layer->texture()); |
- REPORTER_ASSERT(reporter, layer->rect().isEmpty()); |
-#if USE_ATLAS |
- } |
-#endif |
- } |
- |
- // Free them all SkGpuDevice-style. This will not free up the |
- // atlas' texture but will eliminate all the layers. |
- cache.purge(&picture); |
- |
- REPORTER_ASSERT(reporter, GetNumLayers::NumLayers(&cache) == 0); |
- // TODO: add VRAM/resource cache check here |
- |
- // Re-create the layers |
- create_layers(reporter, &cache, picture); |
- |
- // Free them again GrContext-style. This should free up everything. |
- cache.freeAll(); |
- |
- REPORTER_ASSERT(reporter, GetNumLayers::NumLayers(&cache) == 0); |
- // TODO: add VRAM/resource cache check here |
-} |
- |
-#endif |