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

Side by Side Diff: remoting/host/client_session_unittest.cc

Issue 2627433003: Remove ScopedVector from remoting/. (Closed)
Patch Set: Created 3 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "remoting/host/client_session.h" 5 #include "remoting/host/client_session.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <string> 10 #include <string>
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 // Message loop that will process all ClientSession tasks. 120 // Message loop that will process all ClientSession tasks.
121 base::MessageLoop message_loop_; 121 base::MessageLoop message_loop_;
122 122
123 // AutoThreadTaskRunner on which |client_session_| will be run. 123 // AutoThreadTaskRunner on which |client_session_| will be run.
124 scoped_refptr<AutoThreadTaskRunner> task_runner_; 124 scoped_refptr<AutoThreadTaskRunner> task_runner_;
125 125
126 // Used to run |message_loop_| after each test, until no objects remain that 126 // Used to run |message_loop_| after each test, until no objects remain that
127 // require it. 127 // require it.
128 base::RunLoop run_loop_; 128 base::RunLoop run_loop_;
129 129
130 // HostExtensions to pass when creating the ClientSession. Caller retains 130 // HostExtensions to pass when creating the ClientSession.
131 // ownership of the HostExtensions themselves. 131 std::vector<std::unique_ptr<HostExtension>> extensions_;
132 std::vector<HostExtension*> extensions_;
133 132
134 // ClientSession instance under test. 133 // ClientSession instance under test.
135 std::unique_ptr<ClientSession> client_session_; 134 std::unique_ptr<ClientSession> client_session_;
136 135
137 // ClientSession::EventHandler mock for use in tests. 136 // ClientSession::EventHandler mock for use in tests.
138 MockClientSessionEventHandler session_event_handler_; 137 MockClientSessionEventHandler session_event_handler_;
139 138
140 // Storage for values to be returned by the protocol::Session mock. 139 // Storage for values to be returned by the protocol::Session mock.
141 std::unique_ptr<SessionConfig> session_config_; 140 std::unique_ptr<SessionConfig> session_config_;
142 const std::string client_jid_; 141 const std::string client_jid_;
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 } 375 }
377 } 376 }
378 } 377 }
379 378
380 // Verifies that clients can have extensions registered, resulting in the 379 // Verifies that clients can have extensions registered, resulting in the
381 // correct capabilities being reported, and messages delivered correctly. 380 // correct capabilities being reported, and messages delivered correctly.
382 // The extension system is tested more extensively in the 381 // The extension system is tested more extensively in the
383 // HostExtensionSessionManager unit-tests. 382 // HostExtensionSessionManager unit-tests.
384 TEST_F(ClientSessionTest, Extensions) { 383 TEST_F(ClientSessionTest, Extensions) {
385 // Configure fake extensions for testing. 384 // Configure fake extensions for testing.
386 FakeExtension extension1("ext1", "cap1"); 385 extensions_.push_back(base::MakeUnique<FakeExtension>("ext1", "cap1"));
387 extensions_.push_back(&extension1); 386 extensions_.push_back(base::MakeUnique<FakeExtension>("ext2", std::string()));
388 FakeExtension extension2("ext2", ""); 387 extensions_.push_back(base::MakeUnique<FakeExtension>("ext3", "cap3"));
389 extensions_.push_back(&extension2); 388 FakeExtension* extension1 = static_cast<FakeExtension*>(extensions_[0].get());
390 FakeExtension extension3("ext3", "cap3"); 389 FakeExtension* extension2 = static_cast<FakeExtension*>(extensions_[1].get());
391 extensions_.push_back(&extension3); 390 FakeExtension* extension3 = static_cast<FakeExtension*>(extensions_[2].get());
392 391
393 // Verify that the ClientSession reports the correct capabilities. 392 // Verify that the ClientSession reports the correct capabilities.
394 EXPECT_CALL(client_stub_, SetCapabilities(EqCapabilities("cap1 cap3"))); 393 EXPECT_CALL(client_stub_, SetCapabilities(EqCapabilities("cap1 cap3")));
395 394
396 CreateClientSession(); 395 CreateClientSession();
397 ConnectClientSession(); 396 ConnectClientSession();
398 397
399 testing::Mock::VerifyAndClearExpectations(&client_stub_); 398 testing::Mock::VerifyAndClearExpectations(&client_stub_);
400 399
401 // Mimic the client reporting an overlapping set of capabilities. 400 // Mimic the client reporting an overlapping set of capabilities.
(...skipping 11 matching lines...) Expand all
413 message3.set_data("data"); 412 message3.set_data("data");
414 client_session_->DeliverClientMessage(message3); 413 client_session_->DeliverClientMessage(message3);
415 protocol::ExtensionMessage message4; 414 protocol::ExtensionMessage message4;
416 message4.set_type("ext4"); 415 message4.set_type("ext4");
417 message4.set_data("data"); 416 message4.set_data("data");
418 client_session_->DeliverClientMessage(message4); 417 client_session_->DeliverClientMessage(message4);
419 418
420 base::RunLoop().RunUntilIdle(); 419 base::RunLoop().RunUntilIdle();
421 420
422 // ext1 was instantiated and sent a message, and did not wrap anything. 421 // ext1 was instantiated and sent a message, and did not wrap anything.
423 EXPECT_TRUE(extension1.was_instantiated()); 422 EXPECT_TRUE(extension1->was_instantiated());
424 EXPECT_TRUE(extension1.has_handled_message()); 423 EXPECT_TRUE(extension1->has_handled_message());
425 424
426 // ext2 was instantiated but not sent a message, and wrapped video encoder. 425 // ext2 was instantiated but not sent a message, and wrapped video encoder.
427 EXPECT_TRUE(extension2.was_instantiated()); 426 EXPECT_TRUE(extension2->was_instantiated());
428 EXPECT_FALSE(extension2.has_handled_message()); 427 EXPECT_FALSE(extension2->has_handled_message());
429 428
430 // ext3 was sent a message but not instantiated. 429 // ext3 was sent a message but not instantiated.
431 EXPECT_FALSE(extension3.was_instantiated()); 430 EXPECT_FALSE(extension3->was_instantiated());
432 } 431 }
433 432
434 } // namespace remoting 433 } // namespace remoting
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698