| // Copyright 2013 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/files/scoped_temp_dir.h" |
| #include "base/threading/platform_thread.h" |
| #include "base/time/time.h" |
| #include "cloud_print/service/win/service_listener.h" |
| #include "cloud_print/service/win/service_utils.h" |
| #include "cloud_print/service/win/setup_listener.h" |
| #include "testing/gtest/include/gtest/gtest.h" |
| |
| TEST(ServiceIpcTest, Timeout) { |
| SetupListener setup(GetCurrentUserName()); |
| ASSERT_FALSE(setup.WaitResponce(base::TimeDelta::FromSeconds(3))); |
| } |
| |
| TEST(ServiceIpcTest, Sequence) { |
| base::ScopedTempDir temp_dir; |
| ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); |
| SetupListener setup(GetCurrentUserName()); |
| ServiceListener service(temp_dir.path()); |
| ASSERT_TRUE(setup.WaitResponce(base::TimeDelta::FromSeconds(30))); |
| EXPECT_EQ(setup.user_data_dir(), temp_dir.path()); |
| EXPECT_EQ(setup.user_name(), GetCurrentUserName()); |
| } |
| |
| TEST(ServiceIpcTest, ReverseSequence) { |
| base::ScopedTempDir temp_dir; |
| ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); |
| ServiceListener service(temp_dir.path()); |
| base::PlatformThread::Sleep(base::TimeDelta::FromSeconds(1)); |
| SetupListener setup(GetCurrentUserName()); |
| ASSERT_TRUE(setup.WaitResponce(base::TimeDelta::FromSeconds(30))); |
| EXPECT_EQ(setup.user_data_dir(), temp_dir.path()); |
| EXPECT_EQ(setup.user_name(), GetCurrentUserName()); |
| } |
| |
| TEST(ServiceIpcTest, InvaludUser) { |
| base::ScopedTempDir temp_dir; |
| ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); |
| SetupListener setup(L"guest"); |
| ServiceListener service(temp_dir.path()); |
| ASSERT_FALSE(setup.WaitResponce(base::TimeDelta::FromSeconds(3))); |
| } |
| |