OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <string> | 5 #include <string> |
6 | 6 |
7 #include "base/compiler_specific.h" | 7 #include "base/compiler_specific.h" |
8 #include "base/strings/string_number_conversions.h" | 8 #include "base/strings/string_number_conversions.h" |
9 #include "base/strings/stringprintf.h" | 9 #include "base/strings/stringprintf.h" |
10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
(...skipping 710 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
721 ASSERT_NO_FATAL_FAILURE(Initialize(INITIALIZATION_DEFAULT)); | 721 ASSERT_NO_FATAL_FAILURE(Initialize(INITIALIZATION_DEFAULT)); |
722 WatchPositionAndObservePermissionBubble(true); | 722 WatchPositionAndObservePermissionBubble(true); |
723 | 723 |
724 // TODO(mvanouwerkerk): Can't close a window you did not open. Maybe this was | 724 // TODO(mvanouwerkerk): Can't close a window you did not open. Maybe this was |
725 // valid when the test was written, but now it just prints "Scripts may close | 725 // valid when the test was written, but now it just prints "Scripts may close |
726 // only the windows that were opened by it." | 726 // only the windows that were opened by it." |
727 std::string script = "window.domAutomationController.send(window.close())"; | 727 std::string script = "window.domAutomationController.send(window.close())"; |
728 ASSERT_TRUE(content::ExecuteScript( | 728 ASSERT_TRUE(content::ExecuteScript( |
729 current_browser()->tab_strip_model()->GetActiveWebContents(), script)); | 729 current_browser()->tab_strip_model()->GetActiveWebContents(), script)); |
730 } | 730 } |
731 | |
732 #if defined(OS_LINUX) | |
733 // http://crbug.com/527437 | |
734 #define MAYBE_LastUsageUpdated DISABLED_LastUsageUpdated | |
735 #else | |
736 #define MAYBE_LastUsageUpdated LastUsageUpdated | |
737 #endif | |
738 IN_PROC_BROWSER_TEST_F(GeolocationBrowserTest, MAYBE_LastUsageUpdated) { | |
739 ASSERT_NO_FATAL_FAILURE(Initialize(INITIALIZATION_DEFAULT)); | |
740 base::SimpleTestClock* clock_ = new base::SimpleTestClock(); | |
741 GetHostContentSettingsMap()->SetPrefClockForTesting( | |
742 scoped_ptr<base::Clock>(clock_)); | |
743 clock_->SetNow(base::Time::UnixEpoch() + base::TimeDelta::FromSeconds(10)); | |
744 | |
745 // Setting the permission should trigger the last usage. | |
746 GetHostContentSettingsMap()->SetContentSetting( | |
747 ContentSettingsPattern::FromURLNoWildcard(current_url()), | |
748 ContentSettingsPattern::FromURLNoWildcard(current_url()), | |
749 CONTENT_SETTINGS_TYPE_GEOLOCATION, | |
750 std::string(), | |
751 CONTENT_SETTING_ALLOW); | |
752 | |
753 // Permission has been used at the starting time. | |
754 EXPECT_EQ(GetHostContentSettingsMap()->GetLastUsage( | |
755 current_url().GetOrigin(), | |
756 current_url().GetOrigin(), | |
757 CONTENT_SETTINGS_TYPE_GEOLOCATION).ToDoubleT(), 10); | |
758 | |
759 clock_->Advance(base::TimeDelta::FromSeconds(3)); | |
760 | |
761 // Calling watchPosition should trigger the last usage update. | |
762 WatchPositionAndObservePermissionBubble(false); | |
763 ExpectPosition(fake_latitude(), fake_longitude()); | |
764 | |
765 // Last usage has been updated. | |
766 EXPECT_EQ(GetHostContentSettingsMap()->GetLastUsage( | |
767 current_url().GetOrigin(), | |
768 current_url().GetOrigin(), | |
769 CONTENT_SETTINGS_TYPE_GEOLOCATION).ToDoubleT(), 13); | |
770 } | |
OLD | NEW |