| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 105 #include "platform/loader/fetch/FetchParameters.h" | 105 #include "platform/loader/fetch/FetchParameters.h" |
| 106 #include "platform/loader/fetch/MemoryCache.h" | 106 #include "platform/loader/fetch/MemoryCache.h" |
| 107 #include "platform/loader/fetch/ResourceError.h" | 107 #include "platform/loader/fetch/ResourceError.h" |
| 108 #include "platform/loader/fetch/ResourceFetcher.h" | 108 #include "platform/loader/fetch/ResourceFetcher.h" |
| 109 #include "platform/loader/fetch/ResourceLoaderOptions.h" | 109 #include "platform/loader/fetch/ResourceLoaderOptions.h" |
| 110 #include "platform/scroll/Scrollbar.h" | 110 #include "platform/scroll/Scrollbar.h" |
| 111 #include "platform/scroll/ScrollbarTestSuite.h" | 111 #include "platform/scroll/ScrollbarTestSuite.h" |
| 112 #include "platform/scroll/ScrollbarTheme.h" | 112 #include "platform/scroll/ScrollbarTheme.h" |
| 113 #include "platform/scroll/ScrollbarThemeMock.h" | 113 #include "platform/scroll/ScrollbarThemeMock.h" |
| 114 #include "platform/scroll/ScrollbarThemeOverlayMock.h" | 114 #include "platform/scroll/ScrollbarThemeOverlayMock.h" |
| 115 #include "platform/testing/HistogramTester.h" |
| 115 #include "platform/testing/RuntimeEnabledFeaturesTestHelpers.h" | 116 #include "platform/testing/RuntimeEnabledFeaturesTestHelpers.h" |
| 116 #include "platform/testing/URLTestHelpers.h" | 117 #include "platform/testing/URLTestHelpers.h" |
| 117 #include "platform/testing/UnitTestHelpers.h" | 118 #include "platform/testing/UnitTestHelpers.h" |
| 118 #include "platform/weborigin/KURLHash.h" | 119 #include "platform/weborigin/KURLHash.h" |
| 119 #include "platform/weborigin/SchemeRegistry.h" | 120 #include "platform/weborigin/SchemeRegistry.h" |
| 120 #include "platform/weborigin/SecurityOrigin.h" | 121 #include "platform/weborigin/SecurityOrigin.h" |
| 121 #include "platform/wtf/Forward.h" | 122 #include "platform/wtf/Forward.h" |
| 122 #include "platform/wtf/PtrUtil.h" | 123 #include "platform/wtf/PtrUtil.h" |
| 123 #include "platform/wtf/dtoa/utils.h" | 124 #include "platform/wtf/dtoa/utils.h" |
| 124 #include "public/platform/Platform.h" | 125 #include "public/platform/Platform.h" |
| (...skipping 11893 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12018 v8::Local<v8::Value> result = | 12019 v8::Local<v8::Value> result = |
| 12019 web_view_helper.LocalMainFrame()->ExecuteScriptAndReturnValue( | 12020 web_view_helper.LocalMainFrame()->ExecuteScriptAndReturnValue( |
| 12020 WebScriptSource("navigator.plugins.length")); | 12021 WebScriptSource("navigator.plugins.length")); |
| 12021 EXPECT_NE(0, result->Int32Value()); | 12022 EXPECT_NE(0, result->Int32Value()); |
| 12022 web_view_helper.WebView()->GetPage()->GetSettings().SetPluginsEnabled(false); | 12023 web_view_helper.WebView()->GetPage()->GetSettings().SetPluginsEnabled(false); |
| 12023 result = web_view_helper.LocalMainFrame()->ExecuteScriptAndReturnValue( | 12024 result = web_view_helper.LocalMainFrame()->ExecuteScriptAndReturnValue( |
| 12024 WebScriptSource("navigator.plugins.length")); | 12025 WebScriptSource("navigator.plugins.length")); |
| 12025 EXPECT_EQ(0, result->Int32Value()); | 12026 EXPECT_EQ(0, result->Int32Value()); |
| 12026 } | 12027 } |
| 12027 | 12028 |
| 12029 TEST_F(WebFrameTest, RecordSameDocumentNavigationToHistogram) { |
| 12030 const char* histogramName = |
| 12031 "RendererScheduler.UpdateForSameDocumentNavigationCount"; |
| 12032 FrameTestHelpers::WebViewHelper web_view_helper; |
| 12033 HistogramTester tester; |
| 12034 web_view_helper.InitializeAndLoad("about:blank"); |
| 12035 LocalFrame* frame = |
| 12036 ToLocalFrame(web_view_helper.WebView()->GetPage()->MainFrame()); |
| 12037 |
| 12038 FrameLoader& main_frame_loader = |
| 12039 web_view_helper.WebView()->MainFrameImpl()->GetFrame()->Loader(); |
| 12040 RefPtr<SerializedScriptValue> message = |
| 12041 SerializeString("message", ToScriptStateForMainWorld(frame)); |
| 12042 tester.ExpectTotalCount(histogramName, 0); |
| 12043 main_frame_loader.UpdateForSameDocumentNavigation( |
| 12044 ToKURL("about:blank"), kSameDocumentNavigationHistoryApi, message, |
| 12045 kScrollRestorationAuto, kFrameLoadTypeInitialHistoryLoad, |
| 12046 frame->GetDocument()); |
| 12047 // The bucket index corresponds to the definition of |
| 12048 // |SinglePageAppNavigationType|. |
| 12049 tester.ExpectBucketCount(histogramName, |
| 12050 kSPANavTypeHistoryPushStateOrReplaceState, 1); |
| 12051 main_frame_loader.UpdateForSameDocumentNavigation( |
| 12052 ToKURL("about:blank"), kSameDocumentNavigationDefault, message, |
| 12053 kScrollRestorationManual, kFrameLoadTypeBackForward, |
| 12054 frame->GetDocument()); |
| 12055 tester.ExpectBucketCount(histogramName, |
| 12056 kSPANavTypeSameDocumentBackwardOrForward, 1); |
| 12057 main_frame_loader.UpdateForSameDocumentNavigation( |
| 12058 ToKURL("about:blank"), kSameDocumentNavigationDefault, message, |
| 12059 kScrollRestorationManual, kFrameLoadTypeInitialHistoryLoad, |
| 12060 frame->GetDocument()); |
| 12061 tester.ExpectBucketCount(histogramName, kSPANavTypeOtherFragmentNavigation, |
| 12062 1); |
| 12063 // kSameDocumentNavigationHistoryApi and kFrameLoadTypeBackForward is an |
| 12064 // illegal combination, which has been caught by DCHECK in |
| 12065 // UpdateForSameDocumentNavigation(). |
| 12066 |
| 12067 tester.ExpectTotalCount(histogramName, 3); |
| 12068 } |
| 12069 |
| 12028 } // namespace blink | 12070 } // namespace blink |
| OLD | NEW |