diff options
Diffstat (limited to 'toolkit/identity/tests/unit/test_provisioning.js')
-rw-r--r-- | toolkit/identity/tests/unit/test_provisioning.js | 242 |
1 files changed, 0 insertions, 242 deletions
diff --git a/toolkit/identity/tests/unit/test_provisioning.js b/toolkit/identity/tests/unit/test_provisioning.js deleted file mode 100644 index c05805bef..000000000 --- a/toolkit/identity/tests/unit/test_provisioning.js +++ /dev/null @@ -1,242 +0,0 @@ -/* Any copyright is dedicated to the Public Domain. - http://creativecommons.org/publicdomain/zero/1.0/ */ - -"use strict"; - -Cu.import("resource://gre/modules/identity/IdentityProvider.jsm"); - -function check_provision_flow_done(provId) { - do_check_null(IdentityProvider._provisionFlows[provId]); -} - -function test_begin_provisioning() { - do_test_pending(); - - setup_provisioning( - TEST_USER, - function(caller) { - // call .beginProvisioning() - IdentityProvider.beginProvisioning(caller); - }, function() {}, - { - beginProvisioningCallback: function(email, duration_s) { - do_check_eq(email, TEST_USER); - do_check_true(duration_s > 0); - do_check_true(duration_s <= (24 * 3600)); - - do_test_finished(); - run_next_test(); - } - }); -} - -function test_raise_provisioning_failure() { - do_test_pending(); - let _callerId = null; - - setup_provisioning( - TEST_USER, - function(caller) { - // call .beginProvisioning() - _callerId = caller.id; - IdentityProvider.beginProvisioning(caller); - }, function(err) { - // this should be invoked with a populated error - do_check_neq(err, null); - do_check_true(err.indexOf("can't authenticate this email") > -1); - - do_test_finished(); - run_next_test(); - }, - { - beginProvisioningCallback: function(email, duration_s) { - // raise the failure as if we can't provision this email - IdentityProvider.raiseProvisioningFailure(_callerId, "can't authenticate this email"); - } - }); -} - -function test_genkeypair_before_begin_provisioning() { - do_test_pending(); - - setup_provisioning( - TEST_USER, - function(caller) { - // call genKeyPair without beginProvisioning - IdentityProvider.genKeyPair(caller.id); - }, - // expect this to be called with an error - function(err) { - do_check_neq(err, null); - - do_test_finished(); - run_next_test(); - }, - { - // this should not be called at all! - genKeyPairCallback: function(pk) { - // a test that will surely fail because we shouldn't be here. - do_check_true(false); - - do_test_finished(); - run_next_test(); - } - } - ); -} - -function test_genkeypair() { - do_test_pending(); - let _callerId = null; - - setup_provisioning( - TEST_USER, - function(caller) { - _callerId = caller.id; - IdentityProvider.beginProvisioning(caller); - }, - function(err) { - // should not be called! - do_check_true(false); - - do_test_finished(); - run_next_test(); - }, - { - beginProvisioningCallback: function(email, time_s) { - IdentityProvider.genKeyPair(_callerId); - }, - genKeyPairCallback: function(kp) { - do_check_neq(kp, null); - - // yay! - do_test_finished(); - run_next_test(); - } - } - ); -} - -// we've already ensured that genkeypair can't be called -// before beginProvisioning, so this test should be enough -// to ensure full sequential call of the 3 APIs. -function test_register_certificate_before_genkeypair() { - do_test_pending(); - let _callerID = null; - - setup_provisioning( - TEST_USER, - function(caller) { - // do the right thing for beginProvisioning - _callerID = caller.id; - IdentityProvider.beginProvisioning(caller); - }, - // expect this to be called with an error - function(err) { - do_check_neq(err, null); - - do_test_finished(); - run_next_test(); - }, - { - beginProvisioningCallback: function(email, duration_s) { - // now we try to register cert but no keygen has been done - IdentityProvider.registerCertificate(_callerID, "fake-cert"); - } - } - ); -} - -function test_register_certificate() { - do_test_pending(); - let _callerId = null; - - setup_provisioning( - TEST_USER, - function(caller) { - _callerId = caller.id; - IdentityProvider.beginProvisioning(caller); - }, - function(err) { - // we should be cool! - do_check_null(err); - - // check that the cert is there - let identity = get_idstore().fetchIdentity(TEST_USER); - do_check_neq(identity, null); - do_check_eq(identity.cert, "fake-cert-42"); - - do_execute_soon(function check_done() { - // cleanup will happen after the callback is called - check_provision_flow_done(_callerId); - - do_test_finished(); - run_next_test(); - }); - }, - { - beginProvisioningCallback: function(email, duration_s) { - IdentityProvider.genKeyPair(_callerId); - }, - genKeyPairCallback: function(pk) { - IdentityProvider.registerCertificate(_callerId, "fake-cert-42"); - } - } - ); -} - - -function test_get_assertion_after_provision() { - do_test_pending(); - let _callerId = null; - - setup_provisioning( - TEST_USER, - function(caller) { - _callerId = caller.id; - IdentityProvider.beginProvisioning(caller); - }, - function(err) { - // we should be cool! - do_check_null(err); - - // check that the cert is there - let identity = get_idstore().fetchIdentity(TEST_USER); - do_check_neq(identity, null); - do_check_eq(identity.cert, "fake-cert-42"); - - do_execute_soon(function check_done() { - // cleanup will happen after the callback is called - check_provision_flow_done(_callerId); - - do_test_finished(); - run_next_test(); - }); - }, - { - beginProvisioningCallback: function(email, duration_s) { - IdentityProvider.genKeyPair(_callerId); - }, - genKeyPairCallback: function(pk) { - IdentityProvider.registerCertificate(_callerId, "fake-cert-42"); - } - } - ); - -} - -var TESTS = []; - -TESTS.push(test_begin_provisioning); -TESTS.push(test_raise_provisioning_failure); -TESTS.push(test_genkeypair_before_begin_provisioning); -TESTS.push(test_genkeypair); -TESTS.push(test_register_certificate_before_genkeypair); -TESTS.push(test_register_certificate); -TESTS.push(test_get_assertion_after_provision); - -TESTS.forEach(add_test); - -function run_test() { - run_next_test(); -} |