Index: goopdate/goopdate_unittest.cc |
diff --git a/goopdate/goopdate_unittest.cc b/goopdate/goopdate_unittest.cc |
deleted file mode 100644 |
index 1950ab8bf3e0b2973597d9cfd533af00f8661391..0000000000000000000000000000000000000000 |
--- a/goopdate/goopdate_unittest.cc |
+++ /dev/null |
@@ -1,1002 +0,0 @@ |
-// Copyright 2009 Google Inc. |
-// |
-// Licensed under the Apache License, Version 2.0 (the "License"); |
-// you may not use this file except in compliance with the License. |
-// You may obtain a copy of the License at |
-// |
-// http://www.apache.org/licenses/LICENSE-2.0 |
-// |
-// Unless required by applicable law or agreed to in writing, software |
-// distributed under the License is distributed on an "AS IS" BASIS, |
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-// See the License for the specific language governing permissions and |
-// limitations under the License. |
-// ======================================================================== |
- |
-#include "omaha/base/constants.h" |
-#include "omaha/base/reg_key.h" |
-#include "omaha/common/command_line.h" |
-#include "omaha/goopdate/goopdate_internal.h" |
-#include "omaha/testing/unit_test.h" |
- |
-namespace omaha { |
- |
-namespace { |
- |
-const TCHAR* const kAppMachineClientStatePath = |
- _T("HKLM\\Software\\") SHORT_COMPANY_NAME _T("\\") PRODUCT_NAME |
- _T("\\ClientState\\{19BE47E4-CF32-48c1-94C4-046507F6A8A6}\\"); |
-const TCHAR* const kApp2MachineClientStatePath = |
- _T("HKLM\\Software\\") SHORT_COMPANY_NAME _T("\\") PRODUCT_NAME |
- _T("\\ClientState\\{553B2D8C-E6A7-43ed-ACC9-A8BA5D34395F}\\"); |
-const TCHAR* const kAppUserClientStatePath = |
- _T("HKCU\\Software\\") SHORT_COMPANY_NAME _T("\\") PRODUCT_NAME |
- _T("\\ClientState\\{19BE47E4-CF32-48c1-94C4-046507F6A8A6}\\"); |
-const TCHAR* const kApp2UserClientStatePath = |
- _T("HKCU\\Software\\") SHORT_COMPANY_NAME _T("\\") PRODUCT_NAME |
- _T("\\ClientState\\{553B2D8C-E6A7-43ed-ACC9-A8BA5D34395F}\\"); |
- |
-const TCHAR* const kAppMachineClientStateMediumPath = |
- _T("HKLM\\Software\\") SHORT_COMPANY_NAME _T("\\") PRODUCT_NAME |
- _T("\\ClientStateMedium\\{19BE47E4-CF32-48c1-94C4-046507F6A8A6}\\"); |
- |
-// Update this when new modes are added. |
-const int kLastMode = COMMANDLINE_MODE_PING; |
- |
-} // namespace |
- |
-class GoopdateRegistryProtectedTest : public testing::Test { |
- protected: |
- GoopdateRegistryProtectedTest() |
- : hive_override_key_name_(kRegistryHiveOverrideRoot) { |
- } |
- |
- CString hive_override_key_name_; |
- |
- virtual void SetUp() { |
- RegKey::DeleteKey(hive_override_key_name_, true); |
- OverrideRegistryHives(hive_override_key_name_); |
- } |
- |
- virtual void TearDown() { |
- RestoreRegistryHives(); |
- ASSERT_SUCCEEDED(RegKey::DeleteKey(hive_override_key_name_, true)); |
- } |
-}; |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateKeyDoesNotExist_NoAppKeys) { |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateValueDoesNotExist_NoAppKeys) { |
- EXPECT_SUCCEEDED(RegKey::CreateKey(MACHINE_REG_UPDATE)); |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateValueDoesNotExist_AppKeyNoValue) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("pv"), |
- _T("1.2.3.4"))); |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateValueDoesNotExist_AppValueZero) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_NoAppKeys) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- |
- EXPECT_EQ(S_FALSE, internal::PromoteAppEulaAccepted(true)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(MACHINE_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_AppKeyNoValue) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("pv"), |
- _T("1.2.3.4"))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(MACHINE_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
- EXPECT_FALSE( |
- RegKey::HasValue(kAppMachineClientStatePath, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_AppValueZero) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(MACHINE_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppMachineClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_AppValueOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppMachineClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-// Unfortunately, the app's ClientStateMedium key is not checked if there is no |
-// corresponding ClientState key. |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_OnlyMediumAppValueOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStateMediumPath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- // The ClientStateMedium was not checked, so eulaaccepted = 0 still exists. |
- EXPECT_TRUE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(0, value); |
- EXPECT_FALSE( |
- RegKey::HasValue(kAppMachineClientStatePath, _T("eulaaccepted"))); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kAppMachineClientStateMediumPath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_MediumAppValueOneAndStateKey) { |
- EXPECT_SUCCEEDED(RegKey::CreateKey(kAppMachineClientStatePath)); |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStateMediumPath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kAppMachineClientStateMediumPath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-// The ClientStateMedium 1 is copied over the ClientState 0. |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_AppZeroAppMediumOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStateMediumPath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kAppMachineClientStateMediumPath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-// The ClientStateMedium 0 is ignored and not copied. |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_AppOneAppMediumZero) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStateMediumPath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kAppMachineClientStateMediumPath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(0, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_FirstAppZeroSecondAppOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kApp2MachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppMachineClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kApp2MachineClientStatePath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_FirstAppNoValueSecondAppOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("pv"), |
- _T("1.2.3.4"))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kApp2MachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
- EXPECT_FALSE( |
- RegKey::HasValue(kAppMachineClientStatePath, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kApp2MachineClientStatePath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-// Asserts because this is an unexpected case. |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_UpdateClientStateOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_CLIENT_STATE_GOOPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- ExpectAsserts expect_asserts; |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(MACHINE_REG_CLIENT_STATE_GOOPDATE, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateZero_UserAppOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(MACHINE_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppUserClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateOne_AppZero) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(MACHINE_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(1, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppMachineClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
-} |
- |
-// The fact that the value is deleted also tells us that the method continued |
-// processing because the value existed even though the value was not zero. |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_Machine_UpdateOne_AppOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(MACHINE_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(true)); |
- |
- EXPECT_FALSE(RegKey::HasValue(MACHINE_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppMachineClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateKeyDoesNotExist_NoAppKeys) { |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- EXPECT_FALSE(RegKey::HasValue(USER_REG_UPDATE, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateValueDoesNotExist_NoAppKeys) { |
- EXPECT_SUCCEEDED(RegKey::CreateKey(USER_REG_UPDATE)); |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- EXPECT_FALSE(RegKey::HasValue(USER_REG_UPDATE, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateValueDoesNotExist_AppKeyNoValue) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStatePath, |
- _T("pv"), |
- _T("1.2.3.4"))); |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- EXPECT_FALSE(RegKey::HasValue(USER_REG_UPDATE, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateValueDoesNotExist_AppValueZero) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- EXPECT_FALSE(RegKey::HasValue(USER_REG_UPDATE, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateZero_NoAppKeys) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- |
- EXPECT_EQ(S_FALSE, internal::PromoteAppEulaAccepted(false)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(USER_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateZero_AppKeyNoValue) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStatePath, |
- _T("pv"), |
- _T("1.2.3.4"))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(USER_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
- EXPECT_FALSE( |
- RegKey::HasValue(kAppUserClientStatePath, _T("eulaaccepted"))); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateZero_AppValueZero) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(USER_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppUserClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateZero_FirstAppZeroSecondAppOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kApp2UserClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- |
- EXPECT_FALSE(RegKey::HasValue(USER_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppUserClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kApp2UserClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateZero_FirstAppNoValueSecondAppOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStatePath, |
- _T("pv"), |
- _T("1.2.3.4"))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kApp2UserClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- |
- EXPECT_FALSE(RegKey::HasValue(USER_REG_UPDATE, _T("eulaaccepted"))); |
- EXPECT_FALSE( |
- RegKey::HasValue(kAppUserClientStatePath, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kApp2UserClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-// Asserts because this is an unexpected case. |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateZero_UpdateClientStateOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_CLIENT_STATE_GOOPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- ExpectAsserts expect_asserts; |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- |
- EXPECT_FALSE(RegKey::HasValue(USER_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(USER_REG_CLIENT_STATE_GOOPDATE, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateOne_AppZero) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(USER_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(1, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppUserClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
-} |
- |
-// The fact that the value is deleted also tells us that the method continued |
-// processing because the value existed even though the value was not zero. |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateOne_AppOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- |
- EXPECT_FALSE(RegKey::HasValue(USER_REG_UPDATE, _T("eulaaccepted"))); |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppUserClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateZero_MachineAppOne) { |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppMachineClientStatePath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(USER_REG_UPDATE, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(0, value); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED( |
- RegKey::GetValue(kAppMachineClientStatePath, _T("eulaaccepted"), &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-// ClientStateMedium is not used. |
-TEST_F(GoopdateRegistryProtectedTest, |
- PromoteAppEulaAccepted_User_UpdateZero_MediumAppValueOneAndStateKey) { |
- const TCHAR* const kAppUserClientStateMediumPath = |
- _T("HKCU\\Software\\") SHORT_COMPANY_NAME _T("\\") PRODUCT_NAME |
- _T("\\ClientStateMedium\\{19BE47E4-CF32-48c1-94C4-046507F6A8A6}\\"); |
- |
- EXPECT_SUCCEEDED(RegKey::CreateKey(kAppUserClientStatePath)); |
- EXPECT_SUCCEEDED(RegKey::SetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(0))); |
- EXPECT_SUCCEEDED(RegKey::SetValue(kAppUserClientStateMediumPath, |
- _T("eulaaccepted"), |
- static_cast<DWORD>(1))); |
- |
- EXPECT_SUCCEEDED(internal::PromoteAppEulaAccepted(false)); |
- |
- DWORD value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(USER_REG_UPDATE, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(0, value); |
- EXPECT_FALSE( |
- RegKey::HasValue(kAppUserClientStatePath, _T("eulaaccepted"))); |
- value = UINT_MAX; |
- EXPECT_SUCCEEDED(RegKey::GetValue(kAppUserClientStateMediumPath, |
- _T("eulaaccepted"), |
- &value)); |
- EXPECT_EQ(1, value); |
-} |
- |
-// |
-// IsMachineProcess tests. |
-// |
- |
-class GoopdateIsMachineProcessTest : public testing::Test { |
- protected: |
- bool FromMachineDirHelper(CommandLineMode mode) { |
- return internal::IsMachineProcess(mode, |
- true, |
- false, |
- false, |
- TRISTATE_NONE); |
- } |
- |
- bool IsLocalSystemHelper(CommandLineMode mode) { |
- return internal::IsMachineProcess(mode, |
- false, |
- true, |
- false, |
- TRISTATE_NONE); |
- } |
- |
- bool MachineOverrideHelper(CommandLineMode mode) { |
- return internal::IsMachineProcess(mode, |
- false, |
- false, |
- true, |
- TRISTATE_NONE); |
- } |
- |
- bool NeedsAdminFalseHelper(CommandLineMode mode) { |
- return internal::IsMachineProcess(mode, |
- false, |
- false, |
- false, |
- TRISTATE_FALSE); |
- } |
- |
- bool NeedsAdminTrueHelper(CommandLineMode mode) { |
- return internal::IsMachineProcess(mode, |
- false, |
- false, |
- false, |
- TRISTATE_TRUE); |
- } |
-}; |
- |
-// Unused function. Its sole purpose is to make sure that the unit tests below |
-// were correctly updated when new modes were added. |
-#pragma warning(push) |
-// enumerator 'identifier' in switch of enum 'enumeration' is not explicitly |
-// handled by a case label. |
-// enumerator 'identifier' in switch of enum 'enumeration' is not handled. |
-#pragma warning(1: 4061 4062) |
-static void EnsureUnitTestUpdatedWithNewModes() { |
- CommandLineMode unused_mode; |
- switch (unused_mode) { |
- case COMMANDLINE_MODE_UNKNOWN: |
- case COMMANDLINE_MODE_NOARGS: |
- case COMMANDLINE_MODE_CORE: |
- case COMMANDLINE_MODE_SERVICE: |
- case COMMANDLINE_MODE_REGSERVER: |
- case COMMANDLINE_MODE_UNREGSERVER: |
- case COMMANDLINE_MODE_NETDIAGS: |
- case COMMANDLINE_MODE_CRASH: |
- case COMMANDLINE_MODE_REPORTCRASH: |
- case COMMANDLINE_MODE_INSTALL: |
- case COMMANDLINE_MODE_UPDATE: |
- case COMMANDLINE_MODE_HANDOFF_INSTALL: |
- case COMMANDLINE_MODE_UA: |
- case COMMANDLINE_MODE_RECOVER: |
- case COMMANDLINE_MODE_WEBPLUGIN: |
- case COMMANDLINE_MODE_CODE_RED_CHECK: |
- case COMMANDLINE_MODE_COMSERVER: |
- case COMMANDLINE_MODE_REGISTER_PRODUCT: |
- case COMMANDLINE_MODE_UNREGISTER_PRODUCT: |
- case COMMANDLINE_MODE_SERVICE_REGISTER: |
- case COMMANDLINE_MODE_SERVICE_UNREGISTER: |
- case COMMANDLINE_MODE_CRASH_HANDLER: |
- case COMMANDLINE_MODE_COMBROKER: |
- case COMMANDLINE_MODE_ONDEMAND: |
- case COMMANDLINE_MODE_MEDIUM_SERVICE: |
- case COMMANDLINE_MODE_UNINSTALL: |
- case COMMANDLINE_MODE_PING: |
- // |
- // When adding a new mode, be sure to update kLastMode too. |
- // |
- break; |
- } |
-} |
-#pragma warning(pop) |
- |
-TEST_F(GoopdateIsMachineProcessTest, IsMachineProcess_MachineDirOnly) { |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_UNKNOWN)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_NOARGS)); |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_CORE)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_SERVICE)); |
- } |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_REGSERVER)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_UNREGSERVER)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_NETDIAGS)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_CRASH)); |
- // TODO(omaha): Change to machine. |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_REPORTCRASH)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_INSTALL)); |
- } |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_UPDATE)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_HANDOFF_INSTALL)); |
- } |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_UA)); |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_RECOVER)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_WEBPLUGIN)); |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_CODE_RED_CHECK)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_COMSERVER)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_REGISTER_PRODUCT)); |
- } |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_UNREGISTER_PRODUCT)); |
- } |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_SERVICE_REGISTER)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_SERVICE_UNREGISTER)); |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_CRASH_HANDLER)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_COMBROKER)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_ONDEMAND)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(FromMachineDirHelper(COMMANDLINE_MODE_MEDIUM_SERVICE)); |
- } |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_UNINSTALL)); |
- EXPECT_TRUE(FromMachineDirHelper(COMMANDLINE_MODE_PING)); |
- EXPECT_TRUE(FromMachineDirHelper( |
- static_cast<CommandLineMode>(kLastMode + 1))); |
-} |
- |
-TEST_F(GoopdateIsMachineProcessTest, IsMachineProcess_IsLocalSystemOnly) { |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_UNKNOWN)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_NOARGS)); |
- EXPECT_TRUE(IsLocalSystemHelper(COMMANDLINE_MODE_CORE)); |
- EXPECT_TRUE(IsLocalSystemHelper(COMMANDLINE_MODE_SERVICE)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_REGSERVER)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_UNREGSERVER)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_NETDIAGS)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_CRASH)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_REPORTCRASH)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_INSTALL)); |
- } |
- EXPECT_TRUE(IsLocalSystemHelper(COMMANDLINE_MODE_UPDATE)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_HANDOFF_INSTALL)); |
- } |
- EXPECT_TRUE(IsLocalSystemHelper(COMMANDLINE_MODE_UA)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_RECOVER)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_WEBPLUGIN)); |
- EXPECT_TRUE(IsLocalSystemHelper(COMMANDLINE_MODE_CODE_RED_CHECK)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_COMSERVER)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_REGISTER_PRODUCT)); |
- } |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_UNREGISTER_PRODUCT)); |
- } |
- EXPECT_TRUE(IsLocalSystemHelper(COMMANDLINE_MODE_SERVICE_REGISTER)); |
- EXPECT_TRUE(IsLocalSystemHelper(COMMANDLINE_MODE_SERVICE_UNREGISTER)); |
- EXPECT_TRUE(IsLocalSystemHelper(COMMANDLINE_MODE_CRASH_HANDLER)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_COMBROKER)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_ONDEMAND)); |
- EXPECT_TRUE(IsLocalSystemHelper(COMMANDLINE_MODE_MEDIUM_SERVICE)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_UNINSTALL)); |
- EXPECT_FALSE(IsLocalSystemHelper(COMMANDLINE_MODE_PING)); |
- EXPECT_FALSE(IsLocalSystemHelper( |
- static_cast<CommandLineMode>(kLastMode + 1))); |
-} |
- |
-TEST_F(GoopdateIsMachineProcessTest, IsMachineProcess_MachineOverrideOnly) { |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_UNKNOWN)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_NOARGS)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_CORE)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_SERVICE)); |
- } |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_REGSERVER)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_UNREGSERVER)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_NETDIAGS)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_CRASH)); |
- EXPECT_TRUE(MachineOverrideHelper(COMMANDLINE_MODE_REPORTCRASH)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_INSTALL)); |
- } |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_UPDATE)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_HANDOFF_INSTALL)); |
- } |
- EXPECT_TRUE(MachineOverrideHelper(COMMANDLINE_MODE_UA)); |
- EXPECT_TRUE(MachineOverrideHelper(COMMANDLINE_MODE_RECOVER)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_WEBPLUGIN)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_CODE_RED_CHECK)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_COMSERVER)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_REGISTER_PRODUCT)); |
- } |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_UNREGISTER_PRODUCT)); |
- } |
- EXPECT_TRUE(MachineOverrideHelper(COMMANDLINE_MODE_SERVICE_REGISTER)); |
- EXPECT_TRUE(MachineOverrideHelper(COMMANDLINE_MODE_SERVICE_UNREGISTER)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_CRASH_HANDLER)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_COMBROKER)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_ONDEMAND)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_MEDIUM_SERVICE)); |
- } |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_UNINSTALL)); |
- EXPECT_FALSE(MachineOverrideHelper(COMMANDLINE_MODE_PING)); |
- EXPECT_FALSE(MachineOverrideHelper( |
- static_cast<CommandLineMode>(kLastMode + 1))); |
-} |
- |
-TEST_F(GoopdateIsMachineProcessTest, IsMachineProcess_NeedsAdminFalseOnly) { |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_UNKNOWN)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_NOARGS)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_CORE)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_SERVICE)); |
- } |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_REGSERVER)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_UNREGSERVER)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_NETDIAGS)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_CRASH)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_REPORTCRASH)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_INSTALL)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_UPDATE)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_HANDOFF_INSTALL)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_UA)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_RECOVER)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_WEBPLUGIN)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_CODE_RED_CHECK)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_COMSERVER)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_REGISTER_PRODUCT)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_UNREGISTER_PRODUCT)); |
- EXPECT_TRUE(NeedsAdminFalseHelper(COMMANDLINE_MODE_SERVICE_REGISTER)); |
- EXPECT_TRUE(NeedsAdminFalseHelper(COMMANDLINE_MODE_SERVICE_UNREGISTER)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_CRASH_HANDLER)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_COMBROKER)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_ONDEMAND)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_MEDIUM_SERVICE)); |
- } |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_UNINSTALL)); |
- EXPECT_FALSE(NeedsAdminFalseHelper(COMMANDLINE_MODE_PING)); |
- EXPECT_FALSE(NeedsAdminFalseHelper( |
- static_cast<CommandLineMode>(kLastMode + 1))); |
-} |
- |
-TEST_F(GoopdateIsMachineProcessTest, IsMachineProcess_NeedsAdminTrueOnly) { |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_UNKNOWN)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_NOARGS)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_CORE)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_SERVICE)); |
- } |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_REGSERVER)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_UNREGSERVER)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_NETDIAGS)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_CRASH)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_REPORTCRASH)); |
- EXPECT_TRUE(NeedsAdminTrueHelper(COMMANDLINE_MODE_INSTALL)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_UPDATE)); |
- EXPECT_TRUE(NeedsAdminTrueHelper(COMMANDLINE_MODE_HANDOFF_INSTALL)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_UA)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_RECOVER)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_WEBPLUGIN)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_CODE_RED_CHECK)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_COMSERVER)); |
- EXPECT_TRUE(NeedsAdminTrueHelper(COMMANDLINE_MODE_REGISTER_PRODUCT)); |
- EXPECT_TRUE(NeedsAdminTrueHelper(COMMANDLINE_MODE_UNREGISTER_PRODUCT)); |
- EXPECT_TRUE(NeedsAdminTrueHelper(COMMANDLINE_MODE_SERVICE_REGISTER)); |
- EXPECT_TRUE(NeedsAdminTrueHelper(COMMANDLINE_MODE_SERVICE_UNREGISTER)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_CRASH_HANDLER)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_COMBROKER)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_ONDEMAND)); |
- { |
- ExpectAsserts expect_asserts; |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_MEDIUM_SERVICE)); |
- } |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_UNINSTALL)); |
- EXPECT_FALSE(NeedsAdminTrueHelper(COMMANDLINE_MODE_PING)); |
- EXPECT_FALSE(NeedsAdminTrueHelper( |
- static_cast<CommandLineMode>(kLastMode + 1))); |
-} |
- |
-// Tests all modes plus an undefined one. |
-TEST(GoopdateTest, CanDisplayUi_NotSilent) { |
- for (int mode = 0; mode <= kLastMode + 1; ++mode) { |
- const bool kExpected = mode == COMMANDLINE_MODE_UNKNOWN || |
- mode == COMMANDLINE_MODE_INSTALL || |
- mode == COMMANDLINE_MODE_HANDOFF_INSTALL || |
- mode == COMMANDLINE_MODE_UA; |
- |
- EXPECT_EQ(kExpected, |
- internal::CanDisplayUi(static_cast<CommandLineMode>(mode), |
- false)); |
- } |
-} |
- |
-TEST(GoopdateTest, CanDisplayUi_Silent) { |
- int mode = 0; |
- // These two modes always return true. |
- for (; mode <= COMMANDLINE_MODE_UNKNOWN; ++mode) { |
- EXPECT_TRUE(internal::CanDisplayUi(static_cast<CommandLineMode>(mode), |
- true)); |
- } |
- |
- // Tests the remaining modes plus an undefined one. |
- for (; mode <= kLastMode + 1; ++mode) { |
- EXPECT_FALSE(internal::CanDisplayUi(static_cast<CommandLineMode>(mode), |
- true)); |
- } |
-} |
- |
-} // namespace omaha |