RESOLVED FIXED 153407
WebKitTestRunner: Credential cache is not cleared between tests
https://bugs.webkit.org/show_bug.cgi?id=153407
Summary WebKitTestRunner: Credential cache is not cleared between tests
Daniel Bates
Reported 2016-01-24 10:59:41 PST
Created attachment 269696 [details] LayoutTestToDemonstrateIssue WebKitTestRunner does not clear cached credentials between test runs. * STEPS TO REPRODUCE The following steps assume you have a build of WebKit. 1. Apply the attached diff to the top-level WebKit checkout, LayoutTestToDemonstrateIssued.diff. 2. In the terminal, inside the top-level WebKit checkout directory, run: Tools/Scripts/run-webkit-tests --no-retry-failures --child-processes 1 http/tests/loading/basic-auth-load-URL-with-consecutive-slashes.html http/tests/loading/basic-auth-resend-wrong-credentials.html Then the test LayoutTests/http/tests/loading/basic-auth-resend-wrong-credentials.html will fail because it uses the credentials set in LayoutTests/http/tests/loading/basic-auth-load-URL-with-consecutive-slashes.html, (username, password) = (webkit, rocks), when accessing the protected resource <ttp://127.0.0.1:8000/loading/resources/test2/protected-resource.php>. Notice that both LayoutTests/http/tests/loading/basic-auth-load-URL-with-consecutive-slashes.html and LayoutTests/http/tests/loading/basic-auth-resend-wrong-credentials.html access a protected resource in the same protection space, <http://127.0.0.1:8000/resources>.
Attachments
LayoutTestToDemonstrateIssue (3.75 KB, patch)
2016-01-24 10:59 PST, Daniel Bates
no flags
Patch (8.06 KB, patch)
2016-01-25 09:38 PST, Daniel Bates
no flags
Patch (10.34 KB, patch)
2016-01-25 10:01 PST, Daniel Bates
no flags
Patch (10.31 KB, patch)
2016-01-25 17:33 PST, Daniel Bates
ap: review+
Daniel Bates
Comment 1 2016-01-24 11:00:00 PST
Daniel Bates
Comment 2 2016-01-25 09:38:46 PST
Brady Eidson
Comment 3 2016-01-25 09:42:17 PST
Comment on attachment 269756 [details] Patch Mostly good, except it only sends the message to the NetworkProcess. I think we still need it sent to all WebProcesses, as well, since we still do some networking in the WebProcesses.
Daniel Bates
Comment 4 2016-01-25 10:01:14 PST
Created attachment 269757 [details] Patch Updated patch to send a message to all web processes to switch to a new testing network session in addition to sending a message to the network process.
Daniel Bates
Comment 5 2016-01-25 10:41:42 PST
Alexey Proskuryakov
Comment 6 2016-01-25 14:29:48 PST
This caused a pretty serious performance regression on tests, so creating a whole new session looks like too large of a hammer, unfortunately :( before: 13:18 13:31 13:42 13:34 13:39 after: 13:59 14:19 14:47 14:12 14:21 14:20
Daniel Bates
Comment 7 2016-01-25 14:51:40 PST
(In reply to comment #6) > This caused a pretty serious performance regression on tests, so creating a > whole new session looks like too large of a hammer, unfortunately :( > > before: > 13:18 > 13:31 > 13:42 > 13:34 > 13:39 > > after: > 13:59 > 14:19 > 14:47 > 14:12 > 14:21 > 14:20 Will rollout <http://trac.webkit.org/changeset/195543>. It should be sufficient to clear the credential cache directly.
WebKit Commit Bot
Comment 8 2016-01-25 15:05:12 PST
Re-opened since this is blocked by bug 153451
Daniel Bates
Comment 9 2016-01-25 17:33:17 PST
Daniel Bates
Comment 10 2016-01-26 08:08:33 PST
Note You need to log in before you can comment on or make changes to this bug.