UNPKG

@mewters/smart-storage

Version:

A JavaScript/TypeScript library designed to simplify working with localStorage, sessionStorage, and cookies by offering automatic object conversion and consistent API.

66 lines (65 loc) 2.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /* eslint-disable @typescript-eslint/unbound-method */ const SessionStorage_1 = require("./SessionStorage"); describe('SessionStorage', () => { beforeEach(() => { window.sessionStorage.clear(); }); it('should get default value from storage when key is not found', () => { const key = 'key'; { const value = 'value'; expect(SessionStorage_1.SessionStorage.get(key, value)).toBe(value); } { const value = 1; expect(SessionStorage_1.SessionStorage.get(key, value)).toBe(value); } { const value = { key: 'value' }; expect(SessionStorage_1.SessionStorage.get(key, value)).toBe(value); } }); it('should set value to storage', () => { const key = 'key'; const value = 'value'; expect(window.sessionStorage.getItem(key)).toBe(null); SessionStorage_1.SessionStorage.set(key, value); expect(window.sessionStorage.getItem(key)).toBe(value); }); it('should remove value from storage', () => { const key = 'key'; const value = 'value'; SessionStorage_1.SessionStorage.set(key, value); expect(window.sessionStorage.getItem(key)).toBe(value); SessionStorage_1.SessionStorage.remove(key); expect(window.sessionStorage.getItem(key)).toBe(null); }); it('should remove items from storage', () => { const key1 = 'key1'; const value1 = 'value1'; const key2 = 'key2'; const value2 = 'value2'; SessionStorage_1.SessionStorage.set(key1, value1); SessionStorage_1.SessionStorage.set(key2, value2); expect(window.sessionStorage.getItem(key1)).toBe(value1); expect(window.sessionStorage.getItem(key2)).toBe(value2); SessionStorage_1.SessionStorage.removeItems([key1, key2]); expect(window.sessionStorage.getItem(key1)).toBe(null); expect(window.sessionStorage.getItem(key2)).toBe(null); }); it('should clear storage', () => { const key1 = 'key1'; const value1 = 'value1'; const key2 = 'key2'; const value2 = 'value2'; SessionStorage_1.SessionStorage.set(key1, value1); SessionStorage_1.SessionStorage.set(key2, value2); expect(window.sessionStorage.getItem(key1)).toBe(value1); expect(window.sessionStorage.getItem(key2)).toBe(value2); SessionStorage_1.SessionStorage.clear(); expect(window.sessionStorage.getItem(key1)).toBe(null); expect(window.sessionStorage.getItem(key2)).toBe(null); }); });