| Index: cc/trees/layer_tree_host_unittest_delegated.cc
|
| diff --git a/cc/trees/layer_tree_host_unittest_delegated.cc b/cc/trees/layer_tree_host_unittest_delegated.cc
|
| index f15da5d7cad67b0dbd56106fc56e547920c0d309..721613a767460f18cf2d8beab6e05308aaed5694 100644
|
| --- a/cc/trees/layer_tree_host_unittest_delegated.cc
|
| +++ b/cc/trees/layer_tree_host_unittest_delegated.cc
|
| @@ -15,6 +15,7 @@
|
| #include "cc/output/delegated_frame_data.h"
|
| #include "cc/quads/shared_quad_state.h"
|
| #include "cc/quads/texture_draw_quad.h"
|
| +#include "cc/resources/returned_resource.h"
|
| #include "cc/test/fake_delegated_renderer_layer.h"
|
| #include "cc/test/fake_delegated_renderer_layer_impl.h"
|
| #include "cc/test/fake_output_surface.h"
|
| @@ -26,29 +27,40 @@
|
| namespace cc {
|
| namespace {
|
|
|
| -bool TransferableResourceLower(const TransferableResource& a,
|
| - const TransferableResource& b) {
|
| +bool ReturnedResourceLower(const ReturnedResource& a,
|
| + const ReturnedResource& b) {
|
| return a.id < b.id;
|
| }
|
|
|
| // Tests if the list of resources matches an expectation, modulo the order.
|
| -bool ResourcesMatch(TransferableResourceArray actual,
|
| +bool ResourcesMatch(ReturnedResourceArray actual,
|
| unsigned* expected,
|
| size_t expected_count) {
|
| - EXPECT_EQ(expected_count, actual.size());
|
| - if (expected_count != actual.size())
|
| - return false;
|
| -
|
| - std::sort(actual.begin(), actual.end(), TransferableResourceLower);
|
| + std::sort(actual.begin(), actual.end(), ReturnedResourceLower);
|
| std::sort(expected, expected + expected_count);
|
| - bool result = true;
|
| - for (size_t i = 0; i < expected_count; ++i) {
|
| - EXPECT_EQ(actual[i].id, expected[i]);
|
| - if (actual[i].id != expected[i])
|
| - result = false;
|
| + size_t actual_index = 0;
|
| +
|
| + // for each element of the expected array, count off one of the actual array
|
| + // (after checking it matches).
|
| + for (size_t expected_index = 0; expected_index < expected_count;
|
| + ++expected_index) {
|
| + EXPECT_LT(actual_index, actual.size());
|
| + if (actual_index >= actual.size())
|
| + return false;
|
| + EXPECT_EQ(actual[actual_index].id, expected[expected_index]);
|
| + if (actual[actual_index].id != expected[expected_index])
|
| + return false;
|
| + EXPECT_GT(actual[actual_index].count, 0);
|
| + if (actual[actual_index].count <= 0) {
|
| + return false;
|
| + } else {
|
| + --actual[actual_index].count;
|
| + if (actual[actual_index].count == 0)
|
| + ++actual_index;
|
| + }
|
| }
|
| -
|
| - return result;
|
| + EXPECT_EQ(actual_index, actual.size());
|
| + return actual_index == actual.size();
|
| }
|
|
|
| #define EXPECT_RESOURCES(expected, actual) \
|
| @@ -531,7 +543,7 @@ class LayerTreeHostDelegatedTestMergeResources
|
|
|
| // The resource 999 from frame1 is returned since it is still on the main
|
| // thread.
|
| - TransferableResourceArray returned_resources;
|
| + ReturnedResourceArray returned_resources;
|
| delegated_->TakeUnusedResourcesForChildCompositor(&returned_resources);
|
| {
|
| unsigned expected[] = {999};
|
| @@ -627,7 +639,7 @@ class LayerTreeHostDelegatedTestReturnUnusedResources
|
|
|
| virtual void DidCommitAndDrawFrame() OVERRIDE {
|
| scoped_ptr<DelegatedFrameData> frame;
|
| - TransferableResourceArray resources;
|
| + ReturnedResourceArray resources;
|
|
|
| int next_source_frame_number = layer_tree_host()->source_frame_number();
|
| switch (next_source_frame_number) {
|
| @@ -691,7 +703,7 @@ class LayerTreeHostDelegatedTestReturnUnusedResources
|
| }
|
|
|
| // Resource are never immediately released.
|
| - TransferableResourceArray empty_resources;
|
| + ReturnedResourceArray empty_resources;
|
| delegated_->TakeUnusedResourcesForChildCompositor(&empty_resources);
|
| EXPECT_TRUE(empty_resources.empty());
|
| }
|
| @@ -716,7 +728,7 @@ class LayerTreeHostDelegatedTestReusedResources
|
|
|
| virtual void DidCommitAndDrawFrame() OVERRIDE {
|
| scoped_ptr<DelegatedFrameData> frame;
|
| - TransferableResourceArray resources;
|
| + ReturnedResourceArray resources;
|
|
|
| int next_source_frame_number = layer_tree_host()->source_frame_number();
|
| switch (next_source_frame_number) {
|
| @@ -792,7 +804,7 @@ class LayerTreeHostDelegatedTestFrameBeforeAck
|
|
|
| virtual void DidCommitAndDrawFrame() OVERRIDE {
|
| scoped_ptr<DelegatedFrameData> frame;
|
| - TransferableResourceArray resources;
|
| + ReturnedResourceArray resources;
|
|
|
| int next_source_frame_number = layer_tree_host()->source_frame_number();
|
| switch (next_source_frame_number) {
|
| @@ -900,7 +912,7 @@ class LayerTreeHostDelegatedTestFrameBeforeTakeResources
|
|
|
| virtual void DidCommitAndDrawFrame() OVERRIDE {
|
| scoped_ptr<DelegatedFrameData> frame;
|
| - TransferableResourceArray resources;
|
| + ReturnedResourceArray resources;
|
|
|
| int next_source_frame_number = layer_tree_host()->source_frame_number();
|
| switch (next_source_frame_number) {
|
| @@ -1033,7 +1045,7 @@ class LayerTreeHostDelegatedTestBadFrame
|
|
|
| virtual void DidCommitAndDrawFrame() OVERRIDE {
|
| scoped_ptr<DelegatedFrameData> frame;
|
| - TransferableResourceArray resources;
|
| + ReturnedResourceArray resources;
|
|
|
| int next_source_frame_number = layer_tree_host()->source_frame_number();
|
| switch (next_source_frame_number) {
|
| @@ -1204,7 +1216,7 @@ class LayerTreeHostDelegatedTestUnnamedResource
|
|
|
| virtual void DidCommit() OVERRIDE {
|
| scoped_ptr<DelegatedFrameData> frame;
|
| - TransferableResourceArray resources;
|
| + ReturnedResourceArray resources;
|
|
|
| int next_source_frame_number = layer_tree_host()->source_frame_number();
|
| switch (next_source_frame_number) {
|
| @@ -1263,7 +1275,7 @@ class LayerTreeHostDelegatedTestDontLeakResource
|
|
|
| virtual void DidCommit() OVERRIDE {
|
| scoped_ptr<DelegatedFrameData> frame;
|
| - TransferableResourceArray resources;
|
| + ReturnedResourceArray resources;
|
|
|
| int next_source_frame_number = layer_tree_host()->source_frame_number();
|
| switch (next_source_frame_number) {
|
| @@ -1347,7 +1359,7 @@ class LayerTreeHostDelegatedTestResourceSentToParent
|
| public:
|
| virtual void DidCommitAndDrawFrame() OVERRIDE {
|
| scoped_ptr<DelegatedFrameData> frame;
|
| - TransferableResourceArray resources;
|
| + ReturnedResourceArray resources;
|
|
|
| int next_source_frame_number = layer_tree_host()->source_frame_number();
|
| switch (next_source_frame_number) {
|
| @@ -1462,7 +1474,7 @@ class LayerTreeHostDelegatedTestCommitWithoutTake
|
|
|
| virtual void DidCommit() OVERRIDE {
|
| scoped_ptr<DelegatedFrameData> frame;
|
| - TransferableResourceArray resources;
|
| + ReturnedResourceArray resources;
|
|
|
| int next_source_frame_number = layer_tree_host()->source_frame_number();
|
| switch (next_source_frame_number) {
|
|
|