diff options
Diffstat (limited to 'remoting/client/chromoting_client_runtime_unittest.cc')
-rw-r--r-- | remoting/client/chromoting_client_runtime_unittest.cc | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/remoting/client/chromoting_client_runtime_unittest.cc b/remoting/client/chromoting_client_runtime_unittest.cc new file mode 100644 index 0000000..89a0f54 --- /dev/null +++ b/remoting/client/chromoting_client_runtime_unittest.cc @@ -0,0 +1,39 @@ +// Copyright (c) 2016 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "base/message_loop/message_loop.h" +#include "base/run_loop.h" +#include "remoting/base/auto_thread_task_runner.h" +#include "remoting/client/chromoting_client_runtime.h" +#include "testing/gtest/include/gtest/gtest.h" + +namespace remoting { + +#if defined(OS_IOS) || defined(OS_ANDROID) + +// A simple test that starts and stop the runtime. This tests the runtime +// operates properly and all threads and message loops are valid. +TEST(ChromotingClientRuntimeTest, StartAndStop) { + scoped_ptr<base::MessageLoopForUI> ui_loop; + ui_loop.reset(new base::MessageLoopForUI()); +#if defined(OS_IOS) + ui_loop->Attach(); +#elif defined(OS_ANDROID) + ui_loop->Start(); +#endif + + scoped_ptr<ChromotingClientRuntime> runtime = + ChromotingClientRuntime::Create(ui_loop.get()); + + ASSERT_TRUE(runtime); + EXPECT_TRUE(runtime->network_task_runner().get()); + EXPECT_TRUE(runtime->ui_task_runner().get()); + EXPECT_TRUE(runtime->display_task_runner().get()); + EXPECT_TRUE(runtime->file_task_runner().get()); + EXPECT_TRUE(runtime->url_requester().get()); +} + +#endif + +} // namespace remoting |