UNPKG

storybook-chrome-screenshot

Version:

A Storybook addon, Save the screenshot image of your stories! via puppeteer.

276 lines 9.13 kB
"use strict"; var __assign = (this && this.__assign) || Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result["default"] = mod; return result; }; Object.defineProperty(exports, "__esModule", { value: true }); var utils = __importStar(require("../utils")); describe('Utilities', function () { it('filenamify()', function () { var table = [ ['foo bar baz', 'foo-bar-baz'], ['foo bar', 'foo-bar'], ['foo_bar/baz', 'foo_barbaz'] ]; for (var _i = 0, table_1 = table; _i < table_1.length; _i++) { var _a = table_1[_i], s = _a[0], o = _a[1]; expect(utils.filenamify(s)).toBe(o); } }); it('permutationKnobs()', function () { var table = [ [{}, []], [ { bool: [true, false], label: ['foo', 'bar'], num: [10, 20] }, [ { bool: true, label: 'foo', num: 10 }, { bool: false, label: 'foo', num: 10 }, { bool: true, label: 'bar', num: 10 }, { bool: false, label: 'bar', num: 10 }, { bool: true, label: 'foo', num: 20 }, { bool: false, label: 'foo', num: 20 }, { bool: true, label: 'bar', num: 20 }, { bool: false, label: 'bar', num: 20 } ] ] ]; for (var _i = 0, table_2 = table; _i < table_2.length; _i++) { var _a = table_2[_i], v = _a[0], o = _a[1]; expect(utils.permutationKnobs(v)).toEqual(o); } }); it('knobsQueryObject()', function () { var table = [ [{}, {}], [ { label: 'text', number: 100, bool: true }, { 'knob-label': 'text', 'knob-number': 100, 'knob-bool': true } ] ]; for (var _i = 0, table_3 = table; _i < table_3.length; _i++) { var _a = table_3[_i], v = _a[0], o = _a[1]; expect(utils.knobsQueryObject(v)).toEqual(o); } }); it('viewport2string()', function () { var vp = { width: 900, height: 400, isMobile: false, hasTouch: false, isLandscape: false, deviceScaleFactor: 1 }; var table = [ [ __assign({}, vp), '900x400' ], [ __assign({}, vp, { width: 100, height: 200 }), '100x200' ], [ __assign({}, vp, { isMobile: true, hasTouch: true, isLandscape: true, deviceScaleFactor: 2 }), '900x400-mobile-touch-landscape@2x' ] ]; for (var _i = 0, table_4 = table; _i < table_4.length; _i++) { var _a = table_4[_i], v = _a[0], o = _a[1]; expect(utils.viewport2string(v)).toBe(o); } }); it('knobs2string()', function () { var table = [ [ { key4: false, key3: true, key2: 10, key1: 'string' }, 'key1-string_key2-10_key3-true_key4-false' ], [ { 'Spacing name': 'string', 'Spacing number': 102 }, 'Spacing name-string_Spacing number-102' ] ]; for (var _i = 0, table_5 = table; _i < table_5.length; _i++) { var _a = table_5[_i], v = _a[0], o = _a[1]; expect(utils.knobs2string(v)).toBe(o); } }); // tslint:disable: max-func-body-length it('story2filename', function () { var table = [ [ { kind: 'Kind', story: 'Story', viewport: null, namespace: null, knobs: null }, 'Kind-Story.png' ], [ { kind: 'Kind', story: 'Story', viewport: null, namespace: null, knobs: null, filePattern: '{story}-{kind}' }, 'Story-Kind.png' ], [ { kind: 'foo', story: 'bar', viewport: { width: 100, height: 200, isMobile: false, hasTouch: false, isLandscape: false, deviceScaleFactor: 2 }, namespace: null, knobs: null }, 'foo-bar-100x200@2x.png' ], [ { kind: 'foo', story: 'bar', viewport: { width: 1, height: 2, isMobile: false, hasTouch: false, isLandscape: false, deviceScaleFactor: 1 }, namespace: 'baz', knobs: null }, 'foo-bar_baz-1x2.png' ], [ { kind: 'foo', story: 'bar', viewport: null, namespace: 'baz', knobs: null, filePattern: '{ns}/{vp}/{kind}-{story}' }, 'baz/foo-bar.png' ], [ { kind: 'foo', story: 'bar', viewport: { width: 1, height: 2, isMobile: false, hasTouch: false, isLandscape: false, deviceScaleFactor: 1 }, namespace: 'baz', knobs: null, filePattern: '{ns}/{vp}/{kind}-{story}' }, 'baz/1x2/foo-bar.png' ], [ { kind: 'foo', story: 'bar', viewport: { width: 1, height: 2, isMobile: false, hasTouch: false, isLandscape: false, deviceScaleFactor: 1 }, namespace: 'baz', knobs: { 'Component Label': 'string', falsy: false, truthy: true } }, 'foo-bar-Component-Label-string_falsy-false_truthy-true_baz-1x2.png' ] ]; for (var _i = 0, table_6 = table; _i < table_6.length; _i++) { var _a = table_6[_i], p = _a[0], o = _a[1]; expect(utils.story2filename(p)).toBe(o); } }); // tslint:enable it('pascalize()', function () { var table = [ ['camelCase', 'CamelCase'], ['foo_bar_baz', 'FooBarBaz'], ['foo bar baz', 'FooBarBaz'] ]; for (var _i = 0, table_7 = table; _i < table_7.length; _i++) { var _a = table_7[_i], s = _a[0], o = _a[1]; expect(utils.pascalize(s)).toBe(o); } }); it('humanizeDuration()', function () { var table = [ [1000, '1s'], [2100, '2.1s'], [5111, '5.11s'], [1 * 1000 * 60 + 2000, '1min 2s'], [19 * 1000 * 60 + 5610, '19min 5.61s'] ]; for (var _i = 0, table_8 = table; _i < table_8.length; _i++) { var _a = table_8[_i], n = _a[0], o = _a[1]; expect(utils.humanizeDuration(n)).toBe(o); } }); it('getStorybookEnv()', function () { window.STORYBOOK_ENV = 'react'; expect(utils.getStorybookEnv()).toBe('react'); window.STORYBOOK_ENV = 'angular'; expect(utils.getStorybookEnv()).toBe('angular'); }); }); //# sourceMappingURL=utils.test.js.map