| 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 } | |
| 234 | 226 |
| 235 void QuitIfNecessary() { | 227 void QuitIfNecessary() { |
| 236 if (quit_count_ > 0 && --quit_count_ == 0) | 228 if (quit_count_ > 0 && --quit_count_ == 0) |
| 237 current_run_loop->Quit(); | 229 current_run_loop->Quit(); |
| 238 } | 230 } |
| 239 | 231 |
| 240 TransportConnectionId id_; | 232 TransportConnectionId id_; |
| 241 | 233 |
| 242 // Used to determine when/if to quit the run loop. | 234 // Used to determine when/if to quit the run loop. |
| 243 size_t quit_count_; | 235 size_t quit_count_; |
| (...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 446 changes[0]); | 438 changes[0]); |
| 447 } | 439 } |
| 448 | 440 |
| 449 // Delete 1. | 441 // Delete 1. |
| 450 { | 442 { |
| 451 AllocationScope scope; | 443 AllocationScope scope; |
| 452 ASSERT_TRUE(DeleteNode(view_manager_.get(), | 444 ASSERT_TRUE(DeleteNode(view_manager_.get(), |
| 453 CreateNodeId(client_.id(), 1), | 445 CreateNodeId(client_.id(), 1), |
| 454 121)); | 446 121)); |
| 455 Changes changes(client_.GetAndClearChanges()); | 447 Changes changes(client_.GetAndClearChanges()); |
| 456 ASSERT_EQ(3u, changes.size()); | 448 ASSERT_EQ(2u, changes.size()); |
| 457 EXPECT_EQ("change_id=121 node=1,1 new_parent=null old_parent=0,1", | 449 EXPECT_EQ("change_id=121 node=1,1 new_parent=null old_parent=0,1", |
| 458 changes[0]); | 450 changes[0]); |
| 459 EXPECT_EQ("change_id=121 node=1,2 new_parent=null old_parent=1,1", | 451 EXPECT_EQ("change_id=121 node=1,2 new_parent=null old_parent=1,1", |
| 460 changes[1]); | 452 changes[1]); |
| 461 EXPECT_EQ("change_id=121 node=1,1 deleted", changes[2]); | |
| 462 } | 453 } |
| 463 } | 454 } |
| 464 | 455 |
| 465 // Assertions around setting a view. | 456 // Assertions around setting a view. |
| 466 TEST_F(ViewManagerConnectionTest, SetView) { | 457 TEST_F(ViewManagerConnectionTest, SetView) { |
| 467 ASSERT_TRUE(CreateNode(view_manager_.get(), 1)); | 458 ASSERT_TRUE(CreateNode(view_manager_.get(), 1)); |
| 468 ASSERT_TRUE(CreateNode(view_manager_.get(), 2)); | 459 ASSERT_TRUE(CreateNode(view_manager_.get(), 2)); |
| 469 ASSERT_TRUE(CreateView(view_manager_.get(), 11)); | 460 ASSERT_TRUE(CreateView(view_manager_.get(), 11)); |
| 470 EXPECT_TRUE(client_.GetAndClearChanges().empty()); | 461 EXPECT_TRUE(client_.GetAndClearChanges().empty()); |
| 471 | 462 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 509 CreateViewId(client_.id(), 11), | 500 CreateViewId(client_.id(), 11), |
| 510 21)); | 501 21)); |
| 511 client_.GetAndClearChanges(); | 502 client_.GetAndClearChanges(); |
| 512 | 503 |
| 513 // Delete node 1. | 504 // Delete node 1. |
| 514 { | 505 { |
| 515 ASSERT_TRUE(DeleteNode(view_manager_.get(), | 506 ASSERT_TRUE(DeleteNode(view_manager_.get(), |
| 516 CreateNodeId(client_.id(), 1), | 507 CreateNodeId(client_.id(), 1), |
| 517 121)); | 508 121)); |
| 518 Changes changes(client_.GetAndClearChanges()); | 509 Changes changes(client_.GetAndClearChanges()); |
| 519 ASSERT_EQ(2u, changes.size()); | 510 ASSERT_EQ(1u, changes.size()); |
| 520 EXPECT_EQ("change_id=121 node=1,1 new_view=null old_view=1,11", | 511 EXPECT_EQ("change_id=121 node=1,1 new_view=null old_view=1,11", |
| 521 changes[0]); | 512 changes[0]); |
| 522 EXPECT_EQ("change_id=121 node=1,1 deleted", changes[1]); | |
| 523 } | 513 } |
| 524 | 514 |
| 525 // Set view 11 on node 2. | 515 // Set view 11 on node 2. |
| 526 { | 516 { |
| 527 ASSERT_TRUE(SetView(view_manager_.get(), | 517 ASSERT_TRUE(SetView(view_manager_.get(), |
| 528 CreateNodeId(client_.id(), 2), | 518 CreateNodeId(client_.id(), 2), |
| 529 CreateViewId(client_.id(), 11), | 519 CreateViewId(client_.id(), 11), |
| 530 22)); | 520 22)); |
| 531 Changes changes(client_.GetAndClearChanges()); | 521 Changes changes(client_.GetAndClearChanges()); |
| 532 ASSERT_EQ(1u, changes.size()); | 522 ASSERT_EQ(1u, changes.size()); |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 631 GetNodeTree(view_manager2_.get(), CreateNodeId(1, 1), &nodes); | 621 GetNodeTree(view_manager2_.get(), CreateNodeId(1, 1), &nodes); |
| 632 ASSERT_EQ(2u, nodes.size()); | 622 ASSERT_EQ(2u, nodes.size()); |
| 633 EXPECT_EQ("node=1,1 parent=0,1 view=null", nodes[0].ToString()); | 623 EXPECT_EQ("node=1,1 parent=0,1 view=null", nodes[0].ToString()); |
| 634 EXPECT_EQ("node=1,11 parent=1,1 view=1,51", nodes[1].ToString()); | 624 EXPECT_EQ("node=1,11 parent=1,1 view=1,51", nodes[1].ToString()); |
| 635 } | 625 } |
| 636 } | 626 } |
| 637 | 627 |
| 638 } // namespace view_manager | 628 } // namespace view_manager |
| 639 } // namespace services | 629 } // namespace services |
| 640 } // namespace mojo | 630 } // namespace mojo |
| OLD | NEW |