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

Side by Side Diff: mojo/public/cpp/bindings/tests/interface_ptr_unittest.cc

Issue 1997473005: Remove requirement that mojo::Environment be instantiated. (Closed) Base URL: https://github.com/domokit/mojo.git@work797_no_utility_tls
Patch Set: SetDefaultAsyncWaiter Created 4 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 <utility> 5 #include <utility>
6 6
7 #include "mojo/public/cpp/bindings/binding.h" 7 #include "mojo/public/cpp/bindings/binding.h"
8 #include "mojo/public/cpp/bindings/strong_binding.h" 8 #include "mojo/public/cpp/bindings/strong_binding.h"
9 #include "mojo/public/cpp/environment/environment.h"
10 #include "mojo/public/cpp/utility/run_loop.h" 9 #include "mojo/public/cpp/utility/run_loop.h"
11 #include "mojo/public/interfaces/bindings/tests/math_calculator.mojom.h" 10 #include "mojo/public/interfaces/bindings/tests/math_calculator.mojom.h"
12 #include "mojo/public/interfaces/bindings/tests/sample_interfaces.mojom.h" 11 #include "mojo/public/interfaces/bindings/tests/sample_interfaces.mojom.h"
13 #include "mojo/public/interfaces/bindings/tests/sample_service.mojom.h" 12 #include "mojo/public/interfaces/bindings/tests/sample_service.mojom.h"
14 #include "mojo/public/interfaces/bindings/tests/scoping.mojom.h" 13 #include "mojo/public/interfaces/bindings/tests/scoping.mojom.h"
15 #include "testing/gtest/include/gtest/gtest.h" 14 #include "testing/gtest/include/gtest/gtest.h"
16 15
17 namespace mojo { 16 namespace mojo {
18 namespace test { 17 namespace test {
19 namespace { 18 namespace {
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after
188 int64_t integer_; 187 int64_t integer_;
189 }; 188 };
190 189
191 class InterfacePtrTest : public testing::Test { 190 class InterfacePtrTest : public testing::Test {
192 public: 191 public:
193 ~InterfacePtrTest() override { loop_.RunUntilIdle(); } 192 ~InterfacePtrTest() override { loop_.RunUntilIdle(); }
194 193
195 void PumpMessages() { loop_.RunUntilIdle(); } 194 void PumpMessages() { loop_.RunUntilIdle(); }
196 195
197 private: 196 private:
198 Environment env_;
199 RunLoop loop_; 197 RunLoop loop_;
200 }; 198 };
201 199
202 TEST_F(InterfacePtrTest, IsBound) { 200 TEST_F(InterfacePtrTest, IsBound) {
203 math::CalculatorPtr calc; 201 math::CalculatorPtr calc;
204 EXPECT_FALSE(calc.is_bound()); 202 EXPECT_FALSE(calc.is_bound());
205 EXPECT_FALSE(calc); 203 EXPECT_FALSE(calc);
206 MathCalculatorImpl calc_impl(GetProxy(&calc)); 204 MathCalculatorImpl calc_impl(GetProxy(&calc));
207 EXPECT_TRUE(calc.is_bound()); 205 EXPECT_TRUE(calc.is_bound());
208 EXPECT_TRUE(calc); 206 EXPECT_TRUE(calc);
(...skipping 270 matching lines...) Expand 10 before | Expand all | Expand 10 after
479 477
480 private: 478 private:
481 double total_ = 0.0; 479 double total_ = 0.0;
482 bool* error_received_; 480 bool* error_received_;
483 bool* destroyed_; 481 bool* destroyed_;
484 482
485 StrongBinding<math::Calculator> binding_; 483 StrongBinding<math::Calculator> binding_;
486 }; 484 };
487 485
488 TEST(StrongConnectorTest, Math) { 486 TEST(StrongConnectorTest, Math) {
489 Environment env;
490 RunLoop loop; 487 RunLoop loop;
491 488
492 bool error_received = false; 489 bool error_received = false;
493 bool destroyed = false; 490 bool destroyed = false;
494 MessagePipe pipe; 491 MessagePipe pipe;
495 new StrongMathCalculatorImpl(pipe.handle0.Pass(), &error_received, 492 new StrongMathCalculatorImpl(pipe.handle0.Pass(), &error_received,
496 &destroyed); 493 &destroyed);
497 494
498 math::CalculatorPtr calc; 495 math::CalculatorPtr calc;
499 calc.Bind(InterfaceHandle<math::Calculator>(pipe.handle1.Pass(), 0u)); 496 calc.Bind(InterfaceHandle<math::Calculator>(pipe.handle1.Pass(), 0u));
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
548 545
549 private: 546 private:
550 double total_ = 0.0; 547 double total_ = 0.0;
551 bool* error_received_; 548 bool* error_received_;
552 bool* destroyed_; 549 bool* destroyed_;
553 550
554 Binding<math::Calculator> binding_; 551 Binding<math::Calculator> binding_;
555 }; 552 };
556 553
557 TEST(WeakConnectorTest, Math) { 554 TEST(WeakConnectorTest, Math) {
558 Environment env;
559 RunLoop loop; 555 RunLoop loop;
560 556
561 bool error_received = false; 557 bool error_received = false;
562 bool destroyed = false; 558 bool destroyed = false;
563 MessagePipe pipe; 559 MessagePipe pipe;
564 WeakMathCalculatorImpl impl(pipe.handle0.Pass(), &error_received, &destroyed); 560 WeakMathCalculatorImpl impl(pipe.handle0.Pass(), &error_received, &destroyed);
565 561
566 math::CalculatorPtr calc; 562 math::CalculatorPtr calc;
567 calc.Bind(InterfaceHandle<math::Calculator>(pipe.handle1.Pass(), 0u)); 563 calc.Bind(InterfaceHandle<math::Calculator>(pipe.handle1.Pass(), 0u));
568 564
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
656 // While B & C have fallen out of scope, the pipes will remain until they are 652 // While B & C have fallen out of scope, the pipes will remain until they are
657 // flushed. 653 // flushed.
658 EXPECT_FALSE(a_impl.d_called()); 654 EXPECT_FALSE(a_impl.d_called());
659 PumpMessages(); 655 PumpMessages();
660 EXPECT_TRUE(a_impl.d_called()); 656 EXPECT_TRUE(a_impl.d_called());
661 } 657 }
662 658
663 } // namespace 659 } // namespace
664 } // namespace test 660 } // namespace test
665 } // namespace mojo 661 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/public/cpp/bindings/tests/handle_passing_unittest.cc ('k') | mojo/public/cpp/bindings/tests/map_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698