summaryrefslogtreecommitdiff
path: root/spec/session_spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'spec/session_spec.js')
-rw-r--r--spec/session_spec.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/spec/session_spec.js b/spec/session_spec.js
index 2f58d25..b37d7b1 100644
--- a/spec/session_spec.js
+++ b/spec/session_spec.js
@@ -72,4 +72,37 @@ describe("Session", function() {
session = new srp.Session(account);
expect(session.login()).toBe(compare.username);
});
+
+ it('calculates secure user parameters for signup', function() {
+ var compare = short_b;
+ account = new srp.Account(compare.username, compare.password);
+ session = new srp.Session(account);
+
+ var signupParams = session.signup();
+
+ expect(Object.keys(signupParams)).toEqual(['login', 'password_salt', 'password_verifier']);
+ });
+
+ it('calculates secure user parameters for update', function() {
+ var compare = short_b;
+ account = new srp.Account(compare.username, compare.password);
+ session = new srp.Session(account);
+
+ var signupParams = session.update();
+
+ expect(Object.keys(signupParams)).toEqual(['login', 'password_salt', 'password_verifier']);
+ });
+
+ it("grabs extra signup parameters from account", function() {
+ account = jasmine.createSpyObj('account', ['login', 'password']);
+ account.loginParams = function() {
+ return {
+ "extraParam": "foobar"
+ }
+ }
+ session = new srp.Session(account);
+
+ expect(session.signup().extraParam).toBe("foobar");
+ });
+
});