Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(82)

Side by Side Diff: chrome/browser/prerender/prerender_browsertest.cc

Issue 6901128: Cancel prerenders that spawn post requests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Missed the call to erase. Created 9 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 <deque> 5 #include <deque>
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/path_service.h" 8 #include "base/path_service.h"
9 #include "base/string_util.h" 9 #include "base/string_util.h"
10 #include "chrome/browser/prerender/prerender_contents.h" 10 #include "chrome/browser/prerender/prerender_contents.h"
(...skipping 772 matching lines...) Expand 10 before | Expand all | Expand 10 after
783 // Checks that we correctly use a prerendered page when the page uses JS to set 783 // Checks that we correctly use a prerendered page when the page uses JS to set
784 // the window.location.hash to a fragment on the same page. 784 // the window.location.hash to a fragment on the same page.
785 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, 785 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
786 PrerenderPageChangeFragmentLocationHash) { 786 PrerenderPageChangeFragmentLocationHash) {
787 PrerenderTestURL("files/prerender/prerender_fragment_location_hash.html", 787 PrerenderTestURL("files/prerender/prerender_fragment_location_hash.html",
788 FINAL_STATUS_USED, 788 FINAL_STATUS_USED,
789 1); 789 1);
790 NavigateToURL("files/prerender/prerender_fragment_location_hash.html"); 790 NavigateToURL("files/prerender/prerender_fragment_location_hash.html");
791 } 791 }
792 792
793 // Checks that ftp scheme is not supported for prerender.
cbentzel 2011/04/30 01:03:34 You'll need to merge with trunk - I reverted the P
dominich 2011/05/02 16:45:55 Done.
794 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderBadSchemeFtp) {
795 PrerenderTestURL(GURL("ftp://ftp.example.com"),
796 FINAL_STATUS_UNSUPPORTED_SCHEME,
797 1);
798 }
799
800 // Checks that ftp scheme is not supported for prerender when done as part of a
801 // client redirect.
802 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
803 PrerenderBadSchemeFtpClientRedirect) {
804 PrerenderTestURL(CreateClientRedirect("ftp://ftp.example.com"),
805 FINAL_STATUS_UNSUPPORTED_SCHEME,
806 1);
807 }
808
809 // Checks that ftp scheme is not supported for prerender when done as part of a
810 // server redirect.
811 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
812 PrerenderBadSchemeFtpServerRedirect) {
813 PrerenderTestURL(CreateServerRedirect("ftp://ftp.example.com"),
814 FINAL_STATUS_UNSUPPORTED_SCHEME,
815 1);
816 }
817
818 // Checks that gopher scheme is not supported for prerender.
819 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderBadSchemeGopher) {
820 PrerenderTestURL(GURL("gopher://gopher.example.com"),
821 FINAL_STATUS_UNSUPPORTED_SCHEME,
822 1);
823 }
824
825 // Checks that gopher scheme is not supported for prerender when done as part of
826 // a client redirect.
827 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
828 PrerenderBadSchemeGopherClientRedirect) {
829 PrerenderTestURL(CreateClientRedirect("gopher://gopher.example.com"),
830 FINAL_STATUS_UNSUPPORTED_SCHEME,
831 1);
832 }
833
834 // Checks that gopher scheme is not supported for prerender when done as part of
835 // a server redirect.
836 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
837 PrerenderBadSchemeGopherServerRedirect) {
838 PrerenderTestURL(CreateServerRedirect("gopher://gopher.example.com"),
839 FINAL_STATUS_UNSUPPORTED_SCHEME,
840 1);
841 }
842
843 // Checks that news scheme is not supported for prerender.
844 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderBadSchemeNews) {
845 PrerenderTestURL(GURL("news:alt.religion.kibology"),
846 FINAL_STATUS_UNSUPPORTED_SCHEME,
847 1);
848 }
849
850 // Checks that news scheme is not supported for prerender when done as part of
851 // a client redirect.
852 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
853 PrerenderBadSchemeNewsClientRedirect) {
854 PrerenderTestURL(CreateClientRedirect("news:alt.religion.kibology"),
855 FINAL_STATUS_UNSUPPORTED_SCHEME,
856 1);
857 }
858
859 // Checks that news scheme is not supported for prerender when done as part of
860 // a server redirect.
861 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
862 PrerenderBadSchemeNewsServerRedirect) {
863 PrerenderTestURL(CreateServerRedirect("news:alt.religion.kibology"),
864 FINAL_STATUS_UNSUPPORTED_SCHEME,
865 1);
866 }
867
868 // Checks that secure news scheme is not supported for prerender.
869 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderBadSchemeSnews) {
870 PrerenderTestURL(GURL("snews:alt.religion.kibology"),
871 FINAL_STATUS_UNSUPPORTED_SCHEME,
872 1);
873 }
874
875 // Checks that snews scheme is not supported for prerender when done as part of
876 // a client redirect.
877 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
878 PrerenderBadSchemeSnewsClientRedirect) {
879 PrerenderTestURL(CreateClientRedirect("snews:alt.religion.kibology"),
880 FINAL_STATUS_UNSUPPORTED_SCHEME,
881 1);
882 }
883
884 // Checks that snews scheme is not supported for prerender when done as part of
885 // a server redirect.
886 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
887 PrerenderBadSchemeSnewsServerRedirect) {
888 PrerenderTestURL(CreateServerRedirect("snews:alt.religion.kibology"),
889 FINAL_STATUS_UNSUPPORTED_SCHEME,
890 1);
891 }
892
893 // Checks that chrome-extension scheme is not supported for prerender.
894 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
895 PrerenderBadSchemeChromeExtension) {
896 PrerenderTestURL(GURL("chrome-extension://haoclkcoegjldmikeokmnfninfafegfm"),
897 FINAL_STATUS_UNSUPPORTED_SCHEME,
898 1);
899 }
900
901 // Checks that chrome-extension scheme is not supported for prerender when done
902 // as part of a client redirect.
903 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
904 PrerenderBadSchemeChromeExtensionClientRedirect) {
905 PrerenderTestURL(
906 CreateClientRedirect(
907 "chrome-extension://haoclkcoegjldmikeokmnfninfafegfm"),
908 FINAL_STATUS_UNSUPPORTED_SCHEME,
909 1);
910 }
911
912 // Checks that chrome-extension scheme is not supported for prerender when done
913 // as part of a server redirect.
914 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
915 PrerenderBadSchemeChromeExtensionServerRedirect) {
916 PrerenderTestURL(
917 CreateServerRedirect(
918 "chrome-extension://haoclkcoegjldmikeokmnfninfafegfm"),
919 FINAL_STATUS_UNSUPPORTED_SCHEME,
920 1);
921 }
922
923 // Checks that unknown schemes are not supported for prerender.
924 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderBadSchemeUnknown) {
925 PrerenderTestURL(GURL("invalid://foo.bar.co.uk"),
926 FINAL_STATUS_UNSUPPORTED_SCHEME,
927 1);
928 }
929
930 // Checks that unknown schemes are not supported for prerender when done as part
931 // of a client redirect.
932 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
933 PrerenderBadSchemeUnknownClientRedirect) {
934 PrerenderTestURL(CreateClientRedirect("invalid://foo.bar.co.uk"),
935 FINAL_STATUS_UNSUPPORTED_SCHEME,
936 1);
937 }
938
939 // Checks that invalid schemes are not supported for prerender when done as part
940 // of a server redirect.
941 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
942 PrerenderBadSchemeUnknownServerRedirect) {
943 PrerenderTestURL(CreateServerRedirect("invalid://foo.bar.co.uk"),
944 FINAL_STATUS_UNSUPPORTED_SCHEME,
945 1);
946 }
947
948 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderXhrGet) {
cbentzel 2011/04/30 01:03:34 Please add browser tests for applicable methods th
dominich 2011/05/02 16:45:55 Done.
949 PrerenderTestURL("files/prerender/prerender_xhr_get.html",
950 FINAL_STATUS_USED,
951 1);
952 NavigateToDestURL();
953 }
954
955 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderXhrPost) {
956 PrerenderTestURL("files/prerender/prerender_xhr_post.html",
957 FINAL_STATUS_INVALID_HTTP_METHOD,
958 1);
959 }
960
961 // TODO(cbentzel): Add tests for file, chrome, and about schemes, which fail
962 // at webkit resource load time.
963
793 } // namespace prerender 964 } // namespace prerender
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/prerender/prerender_final_status.h » ('j') | chrome/browser/prerender/prerender_manager.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698