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

Unified Diff: remoting/host/register_support_host_request_unittest.cc

Issue 2925733003: Report signling errors for register-support-host requests. (Closed)
Patch Set: Fix memory leak Created 3 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « remoting/host/register_support_host_request.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: remoting/host/register_support_host_request_unittest.cc
diff --git a/remoting/host/register_support_host_request_unittest.cc b/remoting/host/register_support_host_request_unittest.cc
index af99a9bbc6df712bb71621c3bd9f38278f6365f9..3c39e2ec26a41b983180ab8afef144a96a85f1f6 100644
--- a/remoting/host/register_support_host_request_unittest.cc
+++ b/remoting/host/register_support_host_request_unittest.cc
@@ -10,10 +10,10 @@
#include "base/memory/ref_counted.h"
#include "base/message_loop/message_loop.h"
#include "base/observer_list.h"
-#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/stringize_macros.h"
#include "base/test/mock_callback.h"
+#include "base/test/scoped_mock_time_message_loop_task_runner.h"
#include "remoting/base/constants.h"
#include "remoting/base/rsa_key_pair.h"
#include "remoting/base/test_rsa_key_pair.h"
@@ -34,6 +34,7 @@ using testing::Invoke;
using testing::NotNull;
using testing::Return;
using testing::SaveArg;
+using testing::DeleteArg;
namespace remoting {
@@ -71,12 +72,30 @@ class RegisterSupportHostRequestTest : public testing::Test {
}
base::MessageLoop message_loop_;
+ base::ScopedMockTimeMessageLoopTaskRunner mock_time_task_runner_;
MockSignalStrategy signal_strategy_;
base::ObserverList<SignalStrategy::Listener, true> signal_strategy_listeners_;
scoped_refptr<RsaKeyPair> key_pair_;
base::MockCallback<RegisterSupportHostRequest::RegisterCallback> callback_;
};
+TEST_F(RegisterSupportHostRequestTest, Timeout) {
+ std::unique_ptr<RegisterSupportHostRequest> request(
+ new RegisterSupportHostRequest(&signal_strategy_, key_pair_, kTestBotJid,
+ callback_.Get()));
+ EXPECT_CALL(signal_strategy_, GetNextId()).WillOnce(Return(kStanzaId));
+ EXPECT_CALL(signal_strategy_, SendStanzaPtr(NotNull()))
+ .WillOnce(DoAll(DeleteArg<0>(), Return(true)));
+
+ request->OnSignalStrategyStateChange(SignalStrategy::CONNECTED);
+
+ // Generate response and verify that callback is called.
+ EXPECT_CALL(callback_, Run("", base::TimeDelta::FromSeconds(0),
+ "register-support-host request timed out."));
+
+ mock_time_task_runner_->FastForwardBy(base::TimeDelta::FromSeconds(15));
+}
+
TEST_F(RegisterSupportHostRequestTest, Send) {
// |iq_request| is freed by RegisterSupportHostRequest.
int64_t start_time = static_cast<int64_t>(base::Time::Now().ToDoubleT());
@@ -92,7 +111,7 @@ TEST_F(RegisterSupportHostRequestTest, Send) {
.WillOnce(DoAll(SaveArg<0>(&sent_iq), Return(true)));
request->OnSignalStrategyStateChange(SignalStrategy::CONNECTED);
- base::RunLoop().RunUntilIdle();
+ mock_time_task_runner_->RunUntilIdle();
// Verify format of the query.
std::unique_ptr<XmlElement> stanza(sent_iq);
@@ -167,7 +186,7 @@ TEST_F(RegisterSupportHostRequestTest, Send) {
}
EXPECT_EQ(1, consumed);
- base::RunLoop().RunUntilIdle();
+ mock_time_task_runner_->RunUntilIdle();
}
} // namespace remoting
« no previous file with comments | « remoting/host/register_support_host_request.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698