| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "base/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/callback.h" | 6 #include "base/callback.h" |
| 7 #include "base/macros.h" | 7 #include "base/macros.h" |
| 8 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
| 9 #include "base/run_loop.h" | 9 #include "base/run_loop.h" |
| 10 #include "mojo/edk/embedder/embedder.h" | 10 #include "mojo/edk/embedder/embedder.h" |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 81 void SetErrorHandler(const base::Closure& handler) { | 81 void SetErrorHandler(const base::Closure& handler) { |
| 82 error_handler_ = handler; | 82 error_handler_ = handler; |
| 83 } | 83 } |
| 84 | 84 |
| 85 private: | 85 private: |
| 86 void OnProcessError(const std::string& error) { | 86 void OnProcessError(const std::string& error) { |
| 87 if (!error_handler_.is_null()) | 87 if (!error_handler_.is_null()) |
| 88 error_handler_.Run(); | 88 error_handler_.Run(); |
| 89 } | 89 } |
| 90 | 90 |
| 91 base::MessageLoop message_loop; |
| 91 TestBadMessagesPtr proxy_; | 92 TestBadMessagesPtr proxy_; |
| 92 TestBadMessagesImpl impl_; | 93 TestBadMessagesImpl impl_; |
| 93 base::Closure error_handler_; | 94 base::Closure error_handler_; |
| 94 base::MessageLoop message_loop; | |
| 95 }; | 95 }; |
| 96 | 96 |
| 97 TEST_F(ReportBadMessageTest, Request) { | 97 TEST_F(ReportBadMessageTest, Request) { |
| 98 // Verify that basic immediate error reporting works. | 98 // Verify that basic immediate error reporting works. |
| 99 bool error = false; | 99 bool error = false; |
| 100 SetErrorHandler(base::Bind([] (bool* flag) { *flag = true; }, &error)); | 100 SetErrorHandler(base::Bind([] (bool* flag) { *flag = true; }, &error)); |
| 101 EXPECT_TRUE(proxy()->RejectSync()); | 101 EXPECT_TRUE(proxy()->RejectSync()); |
| 102 EXPECT_TRUE(error); | 102 EXPECT_TRUE(error); |
| 103 } | 103 } |
| 104 | 104 |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 185 } | 185 } |
| 186 | 186 |
| 187 EXPECT_FALSE(error); | 187 EXPECT_FALSE(error); |
| 188 bad_message_callback.Run("nope nope nope"); | 188 bad_message_callback.Run("nope nope nope"); |
| 189 EXPECT_TRUE(error); | 189 EXPECT_TRUE(error); |
| 190 } | 190 } |
| 191 | 191 |
| 192 } // namespace | 192 } // namespace |
| 193 } // namespace test | 193 } // namespace test |
| 194 } // namespace mojo | 194 } // namespace mojo |
| OLD | NEW |