kopia lustrzana https://github.com/c9/core
39 wiersze
1.3 KiB
JavaScript
39 wiersze
1.3 KiB
JavaScript
"use strict";
|
|
"use server";
|
|
|
|
require("c9/inline-mocha")(module);
|
|
|
|
var assert = require("assert");
|
|
var wrapper = require("./cookie-signature-wrapper");
|
|
var cookieSignature = require("cookie-signature");
|
|
|
|
describe("c9/cookie-signature-wrapper", function() {
|
|
it("should sign a hash", function() {
|
|
var hash = Math.random().toString(16);
|
|
var secret = Math.random().toString(16);
|
|
assert.equal(wrapper.sign(hash, secret), cookieSignature.sign(hash, secret));
|
|
});
|
|
|
|
it("should sign a hash with the first secret from an array", function() {
|
|
var secrets = ["swordfish", "baseball", "foobar"];
|
|
var hash = Math.random().toString(16);
|
|
|
|
assert.equal(wrapper.sign(hash, secrets), cookieSignature.sign(hash, secrets[1]));
|
|
assert.ok(wrapper.sign(hash, secrets), cookieSignature.sign(hash, secrets[0]));
|
|
|
|
});
|
|
|
|
it("should unsign a hash signed with any of the known secrets", function() {
|
|
var secrets = ["swordfish", "baseball", "foobar"];
|
|
var hash = Math.random().toString(16);
|
|
|
|
secrets.forEach(function(secret) {
|
|
var signed = cookieSignature.sign(hash, secret);
|
|
assert.equal(wrapper.unsign(signed, secrets), hash);
|
|
assert.equal(wrapper.unsign(signed, secret), hash);
|
|
});
|
|
});
|
|
|
|
|
|
});
|