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

Side by Side Diff: mojo/services/view_manager/view_manager_connection_unittest.cc

Issue 274733004: Deletion/ownership (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 7 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « mojo/services/view_manager/view_manager_connection.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
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
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
OLDNEW
« no previous file with comments | « mojo/services/view_manager/view_manager_connection.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698