diff options
Diffstat (limited to 'chrome/test/ui')
-rw-r--r-- | chrome/test/ui/ui_test.cc | 28 | ||||
-rw-r--r-- | chrome/test/ui/ui_test.h | 9 |
2 files changed, 33 insertions, 4 deletions
diff --git a/chrome/test/ui/ui_test.cc b/chrome/test/ui/ui_test.cc index aa7ec23..3052646 100644 --- a/chrome/test/ui/ui_test.cc +++ b/chrome/test/ui/ui_test.cc @@ -7,6 +7,7 @@ #include <set> #include <vector> +#include "app/sql/connection.h" #include "base/base_switches.h" #include "base/command_line.h" #include "base/file_util.h" @@ -371,6 +372,9 @@ void UITest::LaunchBrowser(const CommandLine& arguments, bool clear_profile) { if (profile_type_ == UITest::COMPLEX_THEME) { RewritePreferencesFile(user_data_dir_); } + + // Update the history file to include recent dates. + UpdateHistoryDates(); } ASSERT_TRUE(LaunchBrowserHelper(arguments, use_existing_browser_, false, @@ -929,6 +933,7 @@ void UITest::RewritePreferencesFile(const FilePath& user_data_dir) { UTF16ToASCII(ReplaceStringPlaceholders(format_string, subst, NULL)); EXPECT_TRUE(file_util::WriteFile(pref_path, prefs_string.c_str(), prefs_string.size())); + file_util::EvictFileFromSystemCache(pref_path); } // static @@ -1148,3 +1153,26 @@ bool UITest::LaunchBrowserHelper(const CommandLine& arguments, return true; } + +void UITest::UpdateHistoryDates() { + // Migrate the times in the segment_usage table to yesterday so we get + // actual thumbnails on the NTP. + sql::Connection db; + FilePath history = + user_data_dir_.AppendASCII("Default").AppendASCII("History"); + // Not all test profiles have a history file. + if (!file_util::PathExists(history)) + return; + + ASSERT_TRUE(!db.Open(history)); + base::Time yesterday = base::Time::Now() - base::TimeDelta::FromDays(1); + std::string yesterday_str = Int64ToString(yesterday.ToInternalValue()); + std::string query = StringPrintf( + "UPDATE segment_usage " + "SET time_slot = %s " + "WHERE id IN (SELECT id FROM segment_usage WHERE time_slot > 0);", + yesterday_str.c_str()); + ASSERT_TRUE(db.Execute(query.c_str())); + db.Close(); + file_util::EvictFileFromSystemCache(history); +} diff --git a/chrome/test/ui/ui_test.h b/chrome/test/ui/ui_test.h index 177e5d8..165d9e5 100644 --- a/chrome/test/ui/ui_test.h +++ b/chrome/test/ui/ui_test.h @@ -19,9 +19,6 @@ #include "build/build_config.h" -#if defined(OS_WIN) -#include <windows.h> -#endif #include <string> #include "base/command_line.h" @@ -287,7 +284,6 @@ class UITest : public testing::Test { bool need_equal, bool delete_generated_file); - public: // Get/Set a flag to run the renderer in process when running the // tests. static bool in_process_renderer() { return in_process_renderer_; } @@ -531,6 +527,11 @@ class UITest : public testing::Test { bool wait, base::ProcessHandle* process); + // We want to have a current history database when we start the browser so + // things like the NTP will have thumbnails. This method updates the dates + // in the history to be more recent. + void UpdateHistoryDates(); + base::Time test_start_time_; // Time the test was started // (so we can check for new crash dumps) static bool no_sandbox_; |