1// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_SYNC_TEST_INTEGRATION_THEMES_HELPER_H_ 6#define CHROME_BROWSER_SYNC_TEST_INTEGRATION_THEMES_HELPER_H_ 7 8#include <string> 9 10#include "base/basictypes.h" 11#include "base/compiler_specific.h" 12#include "chrome/browser/sync/test/integration/sync_test.h" 13 14class Profile; 15 16namespace themes_helper { 17 18// Gets the unique ID of the custom theme with the given index. 19std::string GetCustomTheme(int index) WARN_UNUSED_RESULT; 20 21// Gets the ID of |profile|'s theme. 22std::string GetThemeID(Profile* profile) WARN_UNUSED_RESULT; 23 24// Returns true iff |profile| is using a custom theme. 25bool UsingCustomTheme(Profile* profile) WARN_UNUSED_RESULT; 26 27// Returns true iff |profile| is using the default theme. 28bool UsingDefaultTheme(Profile* profile) WARN_UNUSED_RESULT; 29 30// Returns true iff |profile| is using the native theme. 31bool UsingNativeTheme(Profile* profile) WARN_UNUSED_RESULT; 32 33// Returns true iff a theme with the given ID is pending install in 34// |profile|. 35bool ThemeIsPendingInstall( 36 Profile* profile, const std::string& id) WARN_UNUSED_RESULT; 37 38// Returns true iff |profile|'s current theme is the given 39// custom theme or if the given theme is pending install. 40bool HasOrWillHaveCustomTheme( 41 Profile* profile, const std::string& id) WARN_UNUSED_RESULT; 42 43// Sets |profile| to use the custom theme with the given index. 44void UseCustomTheme(Profile* profile, int index); 45 46// Sets |profile| to use the default theme. 47void UseDefaultTheme(Profile* profile); 48 49// Sets |profile| to use the native theme. 50void UseNativeTheme(Profile* profile); 51 52} // namespace themes_helper 53 54#endif // CHROME_BROWSER_SYNC_TEST_INTEGRATION_THEMES_HELPER_H_ 55