Chromium Code Reviews| Index: content/browser/child_process_security_policy_browsertest.cc |
| diff --git a/content/browser/child_process_security_policy_browsertest.cc b/content/browser/child_process_security_policy_browsertest.cc |
| index 3e4264dd61b2e77d055622c0e41fb17f051ce6b1..10d9b8e84ab126c4b03ceb84d5c3ae629fab3358 100644 |
| --- a/content/browser/child_process_security_policy_browsertest.cc |
| +++ b/content/browser/child_process_security_policy_browsertest.cc |
| @@ -6,10 +6,12 @@ |
| #include "base/files/file_path.h" |
| #include "build/build_config.h" |
| +#include "content/browser/bad_message.h" |
| #include "content/browser/child_process_security_policy_impl.h" |
| #include "content/browser/web_contents/web_contents_impl.h" |
| #include "content/public/browser/render_process_host.h" |
| #include "content/public/common/result_codes.h" |
| +#include "content/public/test/browser_test_utils.h" |
| #include "content/public/test/content_browser_test.h" |
| #include "content/public/test/content_browser_test_utils.h" |
| #include "content/shell/browser/shell.h" |
| @@ -56,4 +58,27 @@ IN_PROC_BROWSER_TEST_F(ChildProcessSecurityPolicyInProcessBrowserTest, NoLeak) { |
| ChildProcessSecurityPolicyImpl::GetInstance()->security_state_.size()); |
| } |
| +IN_PROC_BROWSER_TEST_F(ChildProcessSecurityPolicyInProcessBrowserTest, |
| + RevokeOnBadMessage) { |
| + GURL url = GetTestUrl("", "simple_page.html"); |
| + |
| + NavigateToURL(shell(), url); |
| + int child_id = shell()->web_contents()->GetRenderProcessHost()->GetID(); |
| + base::FilePath file_path = GetTestFilePath("", "simple_page.html"); |
| + ChildProcessSecurityPolicyImpl::GetInstance()->GrantReadFile(child_id, |
| + file_path); |
| + EXPECT_TRUE(ChildProcessSecurityPolicyImpl::GetInstance()->CanReadFile( |
| + child_id, file_path)); |
| + |
| + RenderProcessHostWatcher process_exit_observer( |
| + shell()->web_contents()->GetRenderProcessHost(), |
| + RenderProcessHostWatcher::WATCH_FOR_PROCESS_EXIT); |
| + bad_message::ReceivedBadMessage(child_id, |
| + bad_message::RFPH_ILLEGAL_UPLOAD_PARAMS); |
| + process_exit_observer.Wait(); |
| + EXPECT_FALSE( |
| + ChildProcessSecurityPolicyImpl::GetInstance()->CanReadFile(child_id, |
|
Charlie Reis
2017/05/31 17:28:23
This is failing on the bots, but maybe that doesn'
jam
2017/05/31 23:26:15
ok, I'll do this separately since it's a good poin
|
| + file_path)); |
| +} |
| + |
| } // namespace content |