Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(552)

Unified Diff: mojo/gpu/texture_cache_unittest.cc

Issue 1534923002: Remove TextureCache and TextureUploader. (Closed) Base URL: git@github.com:domokit/mojo.git@moz-1
Patch Set: rebase Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « mojo/gpu/texture_cache.cc ('k') | mojo/gpu/texture_uploader.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/gpu/texture_cache_unittest.cc
diff --git a/mojo/gpu/texture_cache_unittest.cc b/mojo/gpu/texture_cache_unittest.cc
deleted file mode 100644
index 1be7415037a30a1a9d8245a610f14cf1ed92abe4..0000000000000000000000000000000000000000
--- a/mojo/gpu/texture_cache_unittest.cc
+++ /dev/null
@@ -1,208 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "mojo/gpu/texture_cache.h"
-
-#include "base/bind.h"
-#include "base/message_loop/message_loop.h"
-#include "mojo/gpu/gl_context.h"
-#include "mojo/gpu/gl_texture.h"
-#include "mojo/public/cpp/application/application_impl.h"
-#include "mojo/public/cpp/application/application_test_base.h"
-#include "mojo/services/geometry/interfaces/geometry.mojom.h"
-#include "mojo/services/surfaces/interfaces/surface_id.mojom.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-namespace {
-
-static const base::TimeDelta kDefaultMessageDelay =
- base::TimeDelta::FromMilliseconds(20);
-
-class TextureCacheTest : public mojo::test::ApplicationTestBase {
- public:
- TextureCacheTest() : weak_factory_(this) {}
- ~TextureCacheTest() override {}
-
- void SetUp() override {
- mojo::test::ApplicationTestBase::SetUp();
- gl_context_ = mojo::GLContext::Create(application_impl()->shell());
- quit_message_loop_callback_ = base::Bind(
- &TextureCacheTest::QuitMessageLoopCallback, weak_factory_.GetWeakPtr());
- }
-
- void QuitMessageLoopCallback() { base::MessageLoop::current()->Quit(); }
-
- void KickMessageLoop() {
- base::MessageLoop::current()->PostDelayedTask(
- FROM_HERE, quit_message_loop_callback_, kDefaultMessageDelay);
- base::MessageLoop::current()->Run();
- }
-
- protected:
- base::WeakPtr<mojo::GLContext> gl_context_;
- base::Closure quit_message_loop_callback_;
- base::WeakPtrFactory<TextureCacheTest> weak_factory_;
-
- private:
- DISALLOW_COPY_AND_ASSIGN(TextureCacheTest);
-};
-
-TEST_F(TextureCacheTest, GetTextureOnce) {
- mojo::TextureCache texture_cache(gl_context_, nullptr);
- mojo::Size size;
- size.width = 100;
- size.height = 100;
- scoped_ptr<mojo::TextureCache::TextureInfo> texture_info(
- texture_cache.GetTexture(size).Pass());
- EXPECT_NE(texture_info->TakeTexture().get(), nullptr);
-}
-
-TEST_F(TextureCacheTest, GetTextureTwice) {
- mojo::TextureCache texture_cache(gl_context_, nullptr);
- mojo::Size size;
- size.width = 100;
- size.height = 100;
- scoped_ptr<mojo::TextureCache::TextureInfo> texture_info_1(
- texture_cache.GetTexture(size).Pass());
- scoped_ptr<mojo::GLTexture> texture_1(texture_info_1->TakeTexture().Pass());
- scoped_ptr<mojo::TextureCache::TextureInfo> texture_info_2(
- texture_cache.GetTexture(size).Pass());
- scoped_ptr<mojo::GLTexture> texture_2(texture_info_2->TakeTexture().Pass());
-
- EXPECT_NE(texture_1.get(), nullptr);
- EXPECT_NE(texture_2.get(), nullptr);
- EXPECT_NE(texture_1.get(), texture_2.get());
- EXPECT_NE(texture_info_1->resource_id(), texture_info_2->resource_id());
-}
-
-TEST_F(TextureCacheTest, GetTextureAfterReturnSameSize) {
- mojo::ResourceReturnerPtr resource_returner;
- mojo::TextureCache texture_cache(gl_context_, &resource_returner);
- mojo::Size size;
- size.width = 100;
- size.height = 100;
-
- // get a texture
- scoped_ptr<mojo::TextureCache::TextureInfo> texture_info_1(
- texture_cache.GetTexture(size).Pass());
- scoped_ptr<mojo::GLTexture> texture(texture_info_1->TakeTexture().Pass());
- mojo::GLTexture* texture_ptr = texture.get();
- EXPECT_NE(texture_ptr, nullptr);
-
- mojo::Array<mojo::ReturnedResourcePtr> resources;
- mojo::ReturnedResourcePtr returnedResource = mojo::ReturnedResource::New();
- returnedResource->id = texture_info_1->resource_id();
- returnedResource->sync_point = 0u;
- returnedResource->count = 1u;
- returnedResource->lost = false;
- resources.push_back(returnedResource.Pass());
-
- // return the texture via resource id
- texture_cache.NotifyPendingResourceReturn(texture_info_1->resource_id(),
- texture.Pass());
- resource_returner->ReturnResources(resources.Pass());
-
- KickMessageLoop();
-
- // get a texture of the same size - it should be the same one as before
- scoped_ptr<mojo::TextureCache::TextureInfo> texture_info_2(
- texture_cache.GetTexture(size).Pass());
- scoped_ptr<mojo::GLTexture> texture_2(texture_info_2->TakeTexture().Pass());
-
- EXPECT_NE(texture_2.get(), nullptr);
- EXPECT_EQ(size.width, texture_2->size().width);
- EXPECT_EQ(size.height, texture_2->size().height);
- EXPECT_EQ(texture_info_1->resource_id(), texture_info_2->resource_id());
-}
-
-TEST_F(TextureCacheTest, GetTextureAfterReturnDifferentSize) {
- mojo::ResourceReturnerPtr resource_returner;
- mojo::TextureCache texture_cache(gl_context_, &resource_returner);
- mojo::Size size;
- size.width = 100;
- size.height = 100;
-
- // get a texture
- scoped_ptr<mojo::TextureCache::TextureInfo> texture_info_1(
- texture_cache.GetTexture(size).Pass());
- scoped_ptr<mojo::GLTexture> texture(texture_info_1->TakeTexture().Pass());
- mojo::GLTexture* texture_ptr = texture.get();
- EXPECT_NE(texture_ptr, nullptr);
-
- mojo::Array<mojo::ReturnedResourcePtr> resources;
- mojo::ReturnedResourcePtr returnedResource = mojo::ReturnedResource::New();
- returnedResource->id = texture_info_1->resource_id();
- returnedResource->sync_point = 0u;
- returnedResource->count = 1u;
- returnedResource->lost = false;
- resources.push_back(returnedResource.Pass());
-
- // return the texture via resource id
- texture_cache.NotifyPendingResourceReturn(texture_info_1->resource_id(),
- texture.Pass());
- resource_returner->ReturnResources(resources.Pass());
-
- KickMessageLoop();
-
- mojo::Size different_size;
- different_size.width = size.width - 1;
- different_size.height = size.height - 1;
-
- // get a texture of the different size - it should not be the same one as
- // before
- scoped_ptr<mojo::TextureCache::TextureInfo> texture_info_2(
- texture_cache.GetTexture(different_size).Pass());
- scoped_ptr<mojo::GLTexture> texture_2(texture_info_2->TakeTexture().Pass());
-
- EXPECT_NE(texture_2.get(), nullptr);
- EXPECT_NE(size.width, texture_2->size().width);
- EXPECT_NE(size.height, texture_2->size().height);
- EXPECT_EQ(different_size.width, texture_2->size().width);
- EXPECT_EQ(different_size.height, texture_2->size().height);
- EXPECT_NE(texture_info_1->resource_id(), texture_info_2->resource_id());
-}
-
-TEST_F(TextureCacheTest, GetTextureReleasedGlContext) {
- gl_context_.reset();
- mojo::TextureCache texture_cache(gl_context_, nullptr);
- mojo::Size size;
- size.width = 100;
- size.height = 100;
-
- EXPECT_EQ(texture_cache.GetTexture(size).get(), nullptr);
-}
-
-TEST_F(TextureCacheTest, ReturnResourcesReleasedGlContext) {
- mojo::ResourceReturnerPtr resource_returner;
- mojo::TextureCache texture_cache(gl_context_, &resource_returner);
- mojo::Size size;
- size.width = 100;
- size.height = 100;
-
- // get a texture
- scoped_ptr<mojo::TextureCache::TextureInfo> texture_info(
- texture_cache.GetTexture(size).Pass());
- scoped_ptr<mojo::GLTexture> texture(texture_info->TakeTexture().Pass());
- mojo::GLTexture* texture_ptr = texture.get();
- EXPECT_NE(texture_ptr, nullptr);
-
- gl_context_.reset();
-
- mojo::Array<mojo::ReturnedResourcePtr> resources;
- mojo::ReturnedResourcePtr returnedResource = mojo::ReturnedResource::New();
- returnedResource->id = texture_info->resource_id();
- returnedResource->sync_point = 0u;
- returnedResource->count = 1u;
- returnedResource->lost = false;
- resources.push_back(returnedResource.Pass());
-
- // return the texture via resource id
- texture_cache.NotifyPendingResourceReturn(texture_info->resource_id(),
- texture.Pass());
- resource_returner->ReturnResources(resources.Pass());
-
- KickMessageLoop();
-}
-
-} // namespace
« no previous file with comments | « mojo/gpu/texture_cache.cc ('k') | mojo/gpu/texture_uploader.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698