xmpp.chapril.org-conversejs/spec/otr.js

38 lines
1.3 KiB
JavaScript
Raw Normal View History

2015-10-25 18:49:35 +01:00
/*global converse */
(function (root, factory) {
define([
"jquery",
"mock",
2014-08-08 22:06:01 +02:00
"test_utils"
], function ($, mock, test_utils) {
return factory($, mock, test_utils);
}
);
} (this, function ($, mock, test_utils) {
var b64_sha1 = converse_api.env.b64_sha1;
return describe("The OTR module", function() {
it("can store a session passphrase in session storage", function () {
// With no prebind, the user's XMPP password is used and nothing is
// stored in session storage.
var auth = converse.authentication;
var pass = converse.connection.pass;
converse.authentication = "manual";
converse.connection.pass = 's3cr3t!';
expect(converse.otr.getSessionPassphrase()).toBe(converse.connection.pass);
// With prebind, a random passphrase is generated and stored in
// session storage.
converse.authentication = "prebind";
var pp = converse.otr.getSessionPassphrase();
expect(pp).not.toBe(converse.connection.pass);
expect(pp).toBe(window.sessionStorage[b64_sha1(converse.connection.jid)]);
// Clean up
converse.authentication = auth;
converse.connection.pass = pass;
});
});
}));