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

Side by Side Diff: chrome/browser/ui/webui/devtools_ui_unittest.cc

Issue 2403633002: [DevTools] Move sanitize url to devtools_ui.cc. (Closed)
Patch Set: flags format Created 4 years, 2 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
OLDNEW
(Empty)
1 // Copyright 2016 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 #include "chrome/browser/ui/webui/devtools_ui.h"
6 #include "testing/gtest/include/gtest/gtest.h"
7
8 class DevToolsUITest : public testing::Test {
9 };
10
11 TEST_F(DevToolsUITest, SanitizeFrontendURL) {
12 std::vector<std::pair<std::string, std::string>> tests = {
13 {"random-string",
14 "chrome-devtools://devtools/"},
15 {"http://valid.url/but/wrong",
16 "chrome-devtools://devtools/but/wrong"},
17 {"chrome-devtools://wrong-domain/",
18 "chrome-devtools://devtools/"},
19 {"chrome-devtools://devtools/bundled/devtools.html",
20 "chrome-devtools://devtools/bundled/devtools.html"},
21 {"chrome-devtools://devtools:1234/bundled/devtools.html#hash",
22 "chrome-devtools://devtools/bundled/devtools.html"},
23 {"chrome-devtools://devtools/some/random/path",
24 "chrome-devtools://devtools/some/random/path"},
25 {"chrome-devtools://devtools/bundled/devtools.html?experiments=true",
26 "chrome-devtools://devtools/bundled/devtools.html?experiments=true"},
27 {"chrome-devtools://devtools/bundled/devtools.html"
28 "?some-flag=flag&v8only=true&experiments=false&debugFrontend=a"
29 "&another-flag=another-flag&can_dock=false&isSharedWorker=notreally"
30 "&remoteFrontend=sure",
31 "chrome-devtools://devtools/bundled/devtools.html"
32 "?v8only=true&experiments=true&debugFrontend=true"
33 "&can_dock=true&isSharedWorker=true&remoteFrontend=true"},
34 {"chrome-devtools://devtools/?ws=any-value-is-fine",
35 "chrome-devtools://devtools/?ws=any-value-is-fine"},
36 {"chrome-devtools://devtools/"
37 "?service-backend=ws://localhost:9222/services",
38 "chrome-devtools://devtools/"
39 "?service-backend=ws://localhost:9222/services"},
40 {"chrome-devtools://devtools/?dockSide=undocked",
41 "chrome-devtools://devtools/?dockSide=undocked"},
42 {"chrome-devtools://devtools/?dockSide=dock-to-bottom",
43 "chrome-devtools://devtools/"},
44 {"chrome-devtools://devtools/?dockSide=bottom",
45 "chrome-devtools://devtools/"},
46 {"chrome-devtools://devtools/?remoteBase="
47 "http://example.com:1234/remote-base#hash",
48 "chrome-devtools://devtools/?remoteBase="
49 "https://chrome-devtools-frontend.appspot.com/"
50 "serve_file//"},
51 {"chrome-devtools://devtools/?remoteBase="
52 "https://chrome-devtools-frontend.appspot.com/some/path/"
53 "@123719741873/more/path.html",
54 "chrome-devtools://devtools/?remoteBase="
55 "https://chrome-devtools-frontend.appspot.com/serve_file/path/"},
56 {"chrome-devtools://devtools/?remoteBase="
57 "https://chrome-devtools-frontend.appspot.com/serve_file/"
58 "@123719741873/inspector.html%3FdebugFrontend%3Dfalse",
59 "chrome-devtools://devtools/?remoteBase="
60 "https://chrome-devtools-frontend.appspot.com/serve_file/"
61 "@123719741873/"},
62 {"chrome-devtools://devtools/bundled/inspector.html?"
63 "&remoteBase=https://chrome-devtools-frontend.appspot.com/serve_file/"
64 "@b4907cc5d602ff470740b2eb6344b517edecb7b9/&can_dock=true",
65 "chrome-devtools://devtools/bundled/inspector.html?"
66 "remoteBase=https://chrome-devtools-frontend.appspot.com/serve_file/"
67 "@b4907cc5d602ff470740b2eb6344b517edecb7b9/&can_dock=true"},
68 {"chrome-devtools://devtools/?remoteFrontendUrl="
69 "https://chrome-devtools-frontend.appspot.com/serve_rev/"
70 "@12345/inspector.html%3FdebugFrontend%3Dfalse",
71 "chrome-devtools://devtools/?remoteFrontendUrl="
72 "https%3A%2F%2Fchrome-devtools-frontend.appspot.com%2Fserve_rev"
73 "%2F%4012345%2Finspector.html%3FdebugFrontend%3Dtrue"},
74 {"chrome-devtools://devtools/?remoteFrontendUrl="
75 "https://chrome-devtools-frontend.appspot.com/serve_rev/"
76 "@12345/inspector.html%22></iframe>something",
77 "chrome-devtools://devtools/?remoteFrontendUrl="
78 "https%3A%2F%2Fchrome-devtools-frontend.appspot.com%2Fserve_rev"
79 "%2F%4012345%2Finspector.html"},
80 {"chrome-devtools://devtools/?remoteFrontendUrl="
81 "http://domain:1234/path/rev/a/filename.html%3Fparam%3Dvalue#hash",
82 "chrome-devtools://devtools/?remoteFrontendUrl="
83 "https%3A%2F%2Fchrome-devtools-frontend.appspot.com%2Fserve_rev"
84 "%2Frev%2Finspector.html"},
85 {"chrome-devtools://devtools/?experiments=whatever&remoteFrontendUrl="
86 "https://chrome-devtools-frontend.appspot.com/serve_rev/"
87 "@12345/devtools.html%3Fws%3Danyvalue%26experiments%3Dlikely"
88 "&unencoded=value&debugFrontend=true",
89 "chrome-devtools://devtools/?experiments=true&remoteFrontendUrl="
90 "https%3A%2F%2Fchrome-devtools-frontend.appspot.com%2Fserve_rev"
91 "%2F%4012345%2Fdevtools.html%3Fws%3Danyvalue%26experiments%3Dtrue"
92 "&debugFrontend=true"},
93 };
94
95 for (const auto& pair : tests) {
96 GURL url = GURL(pair.first);
97 url = DevToolsUI::SanitizeFrontendURL(url);
98 EXPECT_EQ(pair.second, url.spec());
99 }
100 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698