security/manager/ssl/tests/unit/test_ocsp_timeout.js

branch
TOR_BUG_9701
changeset 15
b8a032363ba2
equal deleted inserted replaced
-1:000000000000 0:5878f442cc07
1 // -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 // This Source Code Form is subject to the terms of the Mozilla Public
3 // License, v. 2.0. If a copy of the MPL was not distributed with this
4 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
5 "use strict";
6
7 function run_test() {
8 do_get_profile();
9
10 add_tls_server_setup("OCSPStaplingServer");
11
12 let socket = Cc["@mozilla.org/network/server-socket;1"]
13 .createInstance(Ci.nsIServerSocket);
14 socket.init(8080, true, -1);
15
16
17 add_tests_in_mode(true, true);
18 add_tests_in_mode(false, true);
19 add_tests_in_mode(true, false);
20 add_tests_in_mode(false, false);
21
22 add_test(function() { socket.close(); run_next_test(); });
23 run_next_test();
24 }
25
26 function add_tests_in_mode(useMozillaPKIX, useHardFail) {
27 let startTime;
28 add_test(function () {
29 Services.prefs.setBoolPref("security.use_mozillapkix_verification",
30 useMozillaPKIX);
31 Services.prefs.setBoolPref("security.OCSP.require", useHardFail);
32 startTime = new Date();
33 run_next_test();
34 });
35
36 add_connection_test("ocsp-stapling-none.example.com", useHardFail
37 ? getXPCOMStatusFromNSS(SEC_ERROR_OCSP_SERVER_ERROR)
38 : Cr.NS_OK, clearSessionCache);
39
40 // Reset state
41 add_test(function() {
42 let endTime = new Date();
43 // With OCSP hard-fail on, we timeout after 10 seconds.
44 // With OCSP soft-fail, we timeout after 2 seconds.
45 if (useHardFail) {
46 do_check_true((endTime - startTime) > 10000);
47 } else {
48 do_check_true((endTime - startTime) > 2000);
49 }
50 // Make sure we didn't wait too long.
51 // (Unfortunately, we probably can't have a tight upper bound on
52 // how long is too long for this test, because we might be running
53 // on slow hardware.)
54 do_check_true((endTime - startTime) < 60000);
55 clearOCSPCache();
56 run_next_test();
57 });
58 }

mercurial