storage-manager-js
Version:
A little way to control Cookies, LocalStorage and SessionStorage without tears
43 lines (36 loc) • 1.15 kB
text/typescript
import { Cookie } from "../src";
import { expect, describe, it, vi } from "vitest";
describe("Cookies test", () => {
it("Get nothing", () => {
expect(Cookie.get("token")).toBe(null);
});
it("Set Token as string", () => {
const token = "Hack the planet";
Cookie.set("token", token, { useSecure: false });
expect(Cookie.get("token")).toBe(token);
});
it("Set Token as object", () => {
const token = { a: { b: { c: { d: 1 } } } };
Cookie.set("token", token, { useSecure: false });
expect(Cookie.get("token")).toEqual(token);
});
it("useSecure on unsafe env", () => {
const token = { a: { b: { c: { d: 1 } } } };
Cookie.set("token", token, { useSecure: true });
expect(Cookie.get("token")).toEqual(null);
});
it("Listeners", () => {
const fns = {
listener: () => {},
};
const fn = vi.spyOn(fns, "listener");
Cookie.listener(fn);
Cookie.set("ok", true);
expect(fn).toBeCalledTimes(1);
});
it("multidomain", () => {
Cookie.set("global", "global", { useSecure: false, domain: window.location.hostname, multiDomain: true });
const get = Cookie.get("global");
expect(get).toEqual("global");
});
});