| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <string> | 5 #include <string> |
| 6 #include <vector> | 6 #include <vector> |
| 7 | 7 |
| 8 #include "base/bind.h" | 8 #include "base/bind.h" |
| 9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 216 TransportViewId old_view_id, | 216 TransportViewId old_view_id, |
| 217 TransportChangeId change_id) OVERRIDE { | 217 TransportChangeId change_id) OVERRIDE { |
| 218 changes_.push_back( | 218 changes_.push_back( |
| 219 base::StringPrintf( | 219 base::StringPrintf( |
| 220 "change_id=%d node=%s new_view=%s old_view=%s", | 220 "change_id=%d node=%s new_view=%s old_view=%s", |
| 221 static_cast<int>(change_id), NodeIdToString(node).c_str(), | 221 static_cast<int>(change_id), NodeIdToString(node).c_str(), |
| 222 NodeIdToString(new_view_id).c_str(), | 222 NodeIdToString(new_view_id).c_str(), |
| 223 NodeIdToString(old_view_id).c_str())); | 223 NodeIdToString(old_view_id).c_str())); |
| 224 QuitIfNecessary(); | 224 QuitIfNecessary(); |
| 225 } | 225 } |
| 226 virtual void OnNodeDeleted(TransportNodeId node, |
| 227 TransportChangeId change_id) OVERRIDE { |
| 228 changes_.push_back( |
| 229 base::StringPrintf( |
| 230 "change_id=%d node=%s deleted", |
| 231 static_cast<int>(change_id), NodeIdToString(node).c_str())); |
| 232 QuitIfNecessary(); |
| 233 } |
| 226 | 234 |
| 227 void QuitIfNecessary() { | 235 void QuitIfNecessary() { |
| 228 if (quit_count_ > 0 && --quit_count_ == 0) | 236 if (quit_count_ > 0 && --quit_count_ == 0) |
| 229 current_run_loop->Quit(); | 237 current_run_loop->Quit(); |
| 230 } | 238 } |
| 231 | 239 |
| 232 TransportConnectionId id_; | 240 TransportConnectionId id_; |
| 233 | 241 |
| 234 // Used to determine when/if to quit the run loop. | 242 // Used to determine when/if to quit the run loop. |
| 235 size_t quit_count_; | 243 size_t quit_count_; |
| (...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 438 changes[0]); | 446 changes[0]); |
| 439 } | 447 } |
| 440 | 448 |
| 441 // Delete 1. | 449 // Delete 1. |
| 442 { | 450 { |
| 443 AllocationScope scope; | 451 AllocationScope scope; |
| 444 ASSERT_TRUE(DeleteNode(view_manager_.get(), | 452 ASSERT_TRUE(DeleteNode(view_manager_.get(), |
| 445 CreateNodeId(client_.id(), 1), | 453 CreateNodeId(client_.id(), 1), |
| 446 121)); | 454 121)); |
| 447 Changes changes(client_.GetAndClearChanges()); | 455 Changes changes(client_.GetAndClearChanges()); |
| 448 ASSERT_EQ(2u, changes.size()); | 456 ASSERT_EQ(3u, changes.size()); |
| 449 EXPECT_EQ("change_id=121 node=1,1 new_parent=null old_parent=0,1", | 457 EXPECT_EQ("change_id=121 node=1,1 new_parent=null old_parent=0,1", |
| 450 changes[0]); | 458 changes[0]); |
| 451 EXPECT_EQ("change_id=121 node=1,2 new_parent=null old_parent=1,1", | 459 EXPECT_EQ("change_id=121 node=1,2 new_parent=null old_parent=1,1", |
| 452 changes[1]); | 460 changes[1]); |
| 461 EXPECT_EQ("change_id=121 node=1,1 deleted", changes[2]); |
| 453 } | 462 } |
| 454 } | 463 } |
| 455 | 464 |
| 456 // Assertions around setting a view. | 465 // Assertions around setting a view. |
| 457 TEST_F(ViewManagerConnectionTest, SetView) { | 466 TEST_F(ViewManagerConnectionTest, SetView) { |
| 458 ASSERT_TRUE(CreateNode(view_manager_.get(), 1)); | 467 ASSERT_TRUE(CreateNode(view_manager_.get(), 1)); |
| 459 ASSERT_TRUE(CreateNode(view_manager_.get(), 2)); | 468 ASSERT_TRUE(CreateNode(view_manager_.get(), 2)); |
| 460 ASSERT_TRUE(CreateView(view_manager_.get(), 11)); | 469 ASSERT_TRUE(CreateView(view_manager_.get(), 11)); |
| 461 EXPECT_TRUE(client_.GetAndClearChanges().empty()); | 470 EXPECT_TRUE(client_.GetAndClearChanges().empty()); |
| 462 | 471 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 500 CreateViewId(client_.id(), 11), | 509 CreateViewId(client_.id(), 11), |
| 501 21)); | 510 21)); |
| 502 client_.GetAndClearChanges(); | 511 client_.GetAndClearChanges(); |
| 503 | 512 |
| 504 // Delete node 1. | 513 // Delete node 1. |
| 505 { | 514 { |
| 506 ASSERT_TRUE(DeleteNode(view_manager_.get(), | 515 ASSERT_TRUE(DeleteNode(view_manager_.get(), |
| 507 CreateNodeId(client_.id(), 1), | 516 CreateNodeId(client_.id(), 1), |
| 508 121)); | 517 121)); |
| 509 Changes changes(client_.GetAndClearChanges()); | 518 Changes changes(client_.GetAndClearChanges()); |
| 510 ASSERT_EQ(1u, changes.size()); | 519 ASSERT_EQ(2u, changes.size()); |
| 511 EXPECT_EQ("change_id=121 node=1,1 new_view=null old_view=1,11", | 520 EXPECT_EQ("change_id=121 node=1,1 new_view=null old_view=1,11", |
| 512 changes[0]); | 521 changes[0]); |
| 522 EXPECT_EQ("change_id=121 node=1,1 deleted", changes[1]); |
| 513 } | 523 } |
| 514 | 524 |
| 515 // Set view 11 on node 2. | 525 // Set view 11 on node 2. |
| 516 { | 526 { |
| 517 ASSERT_TRUE(SetView(view_manager_.get(), | 527 ASSERT_TRUE(SetView(view_manager_.get(), |
| 518 CreateNodeId(client_.id(), 2), | 528 CreateNodeId(client_.id(), 2), |
| 519 CreateViewId(client_.id(), 11), | 529 CreateViewId(client_.id(), 11), |
| 520 22)); | 530 22)); |
| 521 Changes changes(client_.GetAndClearChanges()); | 531 Changes changes(client_.GetAndClearChanges()); |
| 522 ASSERT_EQ(1u, changes.size()); | 532 ASSERT_EQ(1u, changes.size()); |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 621 GetNodeTree(view_manager2_.get(), CreateNodeId(1, 1), &nodes); | 631 GetNodeTree(view_manager2_.get(), CreateNodeId(1, 1), &nodes); |
| 622 ASSERT_EQ(2u, nodes.size()); | 632 ASSERT_EQ(2u, nodes.size()); |
| 623 EXPECT_EQ("node=1,1 parent=0,1 view=null", nodes[0].ToString()); | 633 EXPECT_EQ("node=1,1 parent=0,1 view=null", nodes[0].ToString()); |
| 624 EXPECT_EQ("node=1,11 parent=1,1 view=1,51", nodes[1].ToString()); | 634 EXPECT_EQ("node=1,11 parent=1,1 view=1,51", nodes[1].ToString()); |
| 625 } | 635 } |
| 626 } | 636 } |
| 627 | 637 |
| 628 } // namespace view_manager | 638 } // namespace view_manager |
| 629 } // namespace services | 639 } // namespace services |
| 630 } // namespace mojo | 640 } // namespace mojo |
| OLD | NEW |