| 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 "mojo/public/cpp/application/connect.h" | 5 #include "mojo/public/cpp/application/connect.h" |
| 6 #include "mojo/public/cpp/bindings/synchronous_interface_ptr.h" | 6 #include "mojo/public/cpp/bindings/synchronous_interface_ptr.h" |
| 7 #include "services/js/test/echo_service.mojom-sync.h" | 7 #include "services/js/test/echo_service.mojom-sync.h" |
| 8 #include "services/js/test/js_application_test_base.h" | 8 #include "services/js/test/js_application_test_base.h" |
| 9 | 9 |
| 10 using mojo::String; | 10 using mojo::String; |
| 11 | 11 |
| 12 namespace js { | 12 namespace js { |
| 13 namespace { | 13 namespace { |
| 14 | 14 |
| 15 class JSEchoTest : public test::JSApplicationTestBase { | 15 class JSEchoTest : public test::JSApplicationTestBase { |
| 16 public: | 16 public: |
| 17 JSEchoTest() : JSApplicationTestBase() {} | 17 JSEchoTest() : JSApplicationTestBase() {} |
| 18 ~JSEchoTest() override {} | 18 ~JSEchoTest() override {} |
| 19 | 19 |
| 20 protected: | 20 protected: |
| 21 // ApplicationTestBase: | 21 // ApplicationTestBase: |
| 22 void SetUp() override { | 22 void SetUp() override { |
| 23 ApplicationTestBase::SetUp(); | 23 ApplicationTestBase::SetUp(); |
| 24 const std::string& url = JSAppURL("echo.js"); | 24 const std::string& url = JSAppURL("echo.js"); |
| 25 mojo::ConnectToService(application_impl()->shell(), url, | 25 mojo::ConnectToService(shell(), url, GetSynchronousProxy(&echo_service_)); |
| 26 GetSynchronousProxy(&echo_service_)); | |
| 27 } | 26 } |
| 28 | 27 |
| 29 mojo::SynchronousInterfacePtr<mojo::EchoService> echo_service_; | 28 mojo::SynchronousInterfacePtr<mojo::EchoService> echo_service_; |
| 30 | 29 |
| 31 private: | 30 private: |
| 32 MOJO_DISALLOW_COPY_AND_ASSIGN(JSEchoTest); | 31 MOJO_DISALLOW_COPY_AND_ASSIGN(JSEchoTest); |
| 33 }; | 32 }; |
| 34 | 33 |
| 35 class JSServiceProviderEchoTest : public test::JSApplicationTestBase { | 34 class JSServiceProviderEchoTest : public test::JSApplicationTestBase { |
| 36 public: | 35 public: |
| 37 JSServiceProviderEchoTest() : JSApplicationTestBase() {} | 36 JSServiceProviderEchoTest() : JSApplicationTestBase() {} |
| 38 ~JSServiceProviderEchoTest() override {} | 37 ~JSServiceProviderEchoTest() override {} |
| 39 | 38 |
| 40 protected: | 39 protected: |
| 41 // ApplicationTestBase: | 40 // ApplicationTestBase: |
| 42 void SetUp() override { | 41 void SetUp() override { |
| 43 ApplicationTestBase::SetUp(); | 42 ApplicationTestBase::SetUp(); |
| 44 const std::string& url = JSAppURL("echo.js"); | 43 const std::string& url = JSAppURL("echo.js"); |
| 45 application_impl()->shell()->ConnectToApplication( | 44 shell()->ConnectToApplication(url, GetProxy(&echo_service_provider_), |
| 46 url, GetProxy(&echo_service_provider_), nullptr); | 45 nullptr); |
| 47 } | 46 } |
| 48 | 47 |
| 49 mojo::ServiceProviderPtr echo_service_provider_; | 48 mojo::ServiceProviderPtr echo_service_provider_; |
| 50 | 49 |
| 51 private: | 50 private: |
| 52 MOJO_DISALLOW_COPY_AND_ASSIGN(JSServiceProviderEchoTest); | 51 MOJO_DISALLOW_COPY_AND_ASSIGN(JSServiceProviderEchoTest); |
| 53 }; | 52 }; |
| 54 | 53 |
| 55 TEST_F(JSEchoTest, EchoString) { | 54 TEST_F(JSEchoTest, EchoString) { |
| 56 String foo; | 55 String foo; |
| (...skipping 11 matching lines...) Expand all Loading... |
| 68 | 67 |
| 69 TEST_F(JSEchoTest, EchoNullString) { | 68 TEST_F(JSEchoTest, EchoNullString) { |
| 70 String null; | 69 String null; |
| 71 EXPECT_TRUE(echo_service_->EchoString(nullptr, &null)); | 70 EXPECT_TRUE(echo_service_->EchoString(nullptr, &null)); |
| 72 EXPECT_TRUE(null.is_null()); | 71 EXPECT_TRUE(null.is_null()); |
| 73 echo_service_->Quit(); | 72 echo_service_->Quit(); |
| 74 } | 73 } |
| 75 | 74 |
| 76 } // namespace | 75 } // namespace |
| 77 } // namespace js | 76 } // namespace js |
| OLD | NEW |