mirror of
https://github.com/linuxserver/core.git
synced 2026-02-20 05:07:19 +08:00
39 lines
1.4 KiB
JavaScript
39 lines
1.4 KiB
JavaScript
#!/usr/bin/env node
|
|
|
|
/*global describe it before after beforeEach afterEach */
|
|
"use strict";
|
|
|
|
"use server";
|
|
|
|
require("c9/inline-mocha")(module);
|
|
require("c9/setup_paths");
|
|
|
|
var Cookie = require("cookie");
|
|
var assert = require("assert");
|
|
var ConnectCookie = require("./session/cookie");
|
|
|
|
var encrypt = require("./encrypt");
|
|
var decrypt = require("./decrypt");
|
|
|
|
describe("decrypt", function() {
|
|
|
|
it("Should decrypt when secret is a string", function(){
|
|
var sessionID = Math.random().toString(36);
|
|
var secret = Math.random().toString(36);
|
|
var cookieVal = encrypt(sessionID, "connect.sid", new ConnectCookie({}), secret);
|
|
var cookie = Cookie.parse(cookieVal);
|
|
var val = decrypt.decrypt(secret, cookie["connect.sid"]);
|
|
|
|
assert.deepEqual(val, { unsignedCookie: sessionID, usedSecret: secret });
|
|
});
|
|
|
|
it("Should decrypt when secret is an array", function(){
|
|
var sessionID = Math.random().toString(36);
|
|
var secret = [Math.random().toString(36), Math.random().toString(36), Math.random().toString(36)];
|
|
var cookieVal = encrypt(sessionID, "connect.sid", new ConnectCookie({}), secret[1]);
|
|
var cookie = Cookie.parse(cookieVal);
|
|
var val = decrypt.decrypt(secret, cookie["connect.sid"]);
|
|
|
|
assert.deepEqual(val, { unsignedCookie: sessionID, usedSecret: secret[1] });
|
|
});
|
|
}); |