@tygo-van-den-hurk/slyde 0.0.2-unstable-0192a39.0 → 0.0.2-unstable-8f6d5a0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/dist/browser/css/modes/base.d.ts +8 -0
- package/dist/browser/css/modes/base.d.ts.map +1 -0
- package/dist/browser/css/modes/base.js +110 -0
- package/dist/browser/css/modes/base.js.map +1 -0
- package/dist/browser/css/modes/pdf.d.ts +6 -0
- package/dist/browser/css/modes/pdf.d.ts.map +1 -0
- package/dist/browser/css/modes/pdf.js +26 -0
- package/dist/browser/css/modes/pdf.js.map +1 -0
- package/dist/browser/css/modes/presentation.d.ts +8 -0
- package/dist/browser/css/modes/presentation.d.ts.map +1 -0
- package/dist/browser/css/modes/presentation.js +43 -0
- package/dist/browser/css/modes/presentation.js.map +1 -0
- package/dist/browser/css/tw-config.d.ts +6 -0
- package/dist/browser/css/tw-config.d.ts.map +1 -0
- package/dist/browser/css/tw-config.js +34 -0
- package/dist/browser/css/tw-config.js.map +1 -0
- package/dist/browser/{css.d.ts → css/types.d.ts} +2 -10
- package/dist/browser/css/types.d.ts.map +1 -0
- package/dist/browser/css/types.js +2 -0
- package/dist/browser/css/types.js.map +1 -0
- package/dist/browser/html.d.ts +1 -1
- package/dist/browser/html.d.ts.map +1 -1
- package/dist/browser/html.js +16 -8
- package/dist/browser/html.js.map +1 -1
- package/dist/browser/scripts/input-bindings.d.ts +23 -0
- package/dist/browser/scripts/input-bindings.d.ts.map +1 -0
- package/dist/browser/scripts/input-bindings.js +129 -0
- package/dist/browser/scripts/input-bindings.js.map +1 -0
- package/dist/browser/scripts/pdf-mode.d.ts +29 -0
- package/dist/browser/scripts/pdf-mode.d.ts.map +1 -0
- package/dist/browser/scripts/pdf-mode.js +60 -0
- package/dist/browser/scripts/pdf-mode.js.map +1 -0
- package/dist/browser/scripts/slide-control.d.ts +60 -0
- package/dist/browser/scripts/slide-control.d.ts.map +1 -0
- package/dist/browser/scripts/slide-control.js +74 -0
- package/dist/browser/scripts/slide-control.js.map +1 -0
- package/dist/browser/scripts/utils.d.ts +12 -0
- package/dist/browser/scripts/utils.d.ts.map +1 -0
- package/dist/browser/scripts/utils.js +22 -0
- package/dist/browser/scripts/utils.js.map +1 -0
- package/dist/lib/core/render/render.js +1 -1
- package/dist/lib/core/render/render.js.map +1 -1
- package/package.json +1 -1
- package/dist/browser/css.d.ts.map +0 -1
- package/dist/browser/css.js +0 -184
- package/dist/browser/css.js.map +0 -1
- package/dist/browser/index.d.ts +0 -3
- package/dist/browser/index.d.ts.map +0 -1
- package/dist/browser/index.js +0 -5
- package/dist/browser/index.js.map +0 -1
- package/dist/browser/page-logic.browser.d.ts +0 -78
- package/dist/browser/page-logic.browser.d.ts.map +0 -1
- package/dist/browser/page-logic.browser.js +0 -264
- package/dist/browser/page-logic.browser.js.map +0 -1
- package/dist/test/lib/core/compiler/io/cleanAndMergeAdjacentTextNodes.test.d.ts +0 -2
- package/dist/test/lib/core/compiler/io/cleanAndMergeAdjacentTextNodes.test.d.ts.map +0 -1
- package/dist/test/lib/core/compiler/io/cleanAndMergeAdjacentTextNodes.test.js +0 -300
- package/dist/test/lib/core/compiler/io/cleanAndMergeAdjacentTextNodes.test.js.map +0 -1
- package/dist/test/lib/core/compiler/io/cleanAndMergeAdjacentTextNodesRecurse.test.d.ts +0 -2
- package/dist/test/lib/core/compiler/io/cleanAndMergeAdjacentTextNodesRecurse.test.d.ts.map +0 -1
- package/dist/test/lib/core/compiler/io/cleanAndMergeAdjacentTextNodesRecurse.test.js +0 -184
- package/dist/test/lib/core/compiler/io/cleanAndMergeAdjacentTextNodesRecurse.test.js.map +0 -1
- package/dist/test/lib/core/compiler/io/loadPlugins.test.d.ts +0 -2
- package/dist/test/lib/core/compiler/io/loadPlugins.test.d.ts.map +0 -1
- package/dist/test/lib/core/compiler/io/loadPlugins.test.js +0 -30
- package/dist/test/lib/core/compiler/io/loadPlugins.test.js.map +0 -1
- package/dist/test/lib/core/compiler/io/parseInput.test.d.ts +0 -2
- package/dist/test/lib/core/compiler/io/parseInput.test.d.ts.map +0 -1
- package/dist/test/lib/core/compiler/io/parseInput.test.js +0 -21
- package/dist/test/lib/core/compiler/io/parseInput.test.js.map +0 -1
- package/dist/test/lib/core/components/blocks/image.test.d.ts +0 -2
- package/dist/test/lib/core/components/blocks/image.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/blocks/image.test.js +0 -41
- package/dist/test/lib/core/components/blocks/image.test.js.map +0 -1
- package/dist/test/lib/core/components/blocks/point.test.d.ts +0 -2
- package/dist/test/lib/core/components/blocks/point.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/blocks/point.test.js +0 -31
- package/dist/test/lib/core/components/blocks/point.test.js.map +0 -1
- package/dist/test/lib/core/components/blocks/quote.test.d.ts +0 -2
- package/dist/test/lib/core/components/blocks/quote.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/blocks/quote.test.js +0 -31
- package/dist/test/lib/core/components/blocks/quote.test.js.map +0 -1
- package/dist/test/lib/core/components/blocks/table.test.d.ts +0 -2
- package/dist/test/lib/core/components/blocks/table.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/blocks/table.test.js +0 -35
- package/dist/test/lib/core/components/blocks/table.test.js.map +0 -1
- package/dist/test/lib/core/components/blocks/text.test.d.ts +0 -2
- package/dist/test/lib/core/components/blocks/text.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/blocks/text.test.js +0 -31
- package/dist/test/lib/core/components/blocks/text.test.js.map +0 -1
- package/dist/test/lib/core/components/class.test.d.ts +0 -2
- package/dist/test/lib/core/components/class.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/class.test.js +0 -111
- package/dist/test/lib/core/components/class.test.js.map +0 -1
- package/dist/test/lib/core/components/presentations/presentation.test.d.ts +0 -2
- package/dist/test/lib/core/components/presentations/presentation.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/presentations/presentation.test.js +0 -31
- package/dist/test/lib/core/components/presentations/presentation.test.js.map +0 -1
- package/dist/test/lib/core/components/slides/iframe.test.d.ts +0 -2
- package/dist/test/lib/core/components/slides/iframe.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/slides/iframe.test.js +0 -31
- package/dist/test/lib/core/components/slides/iframe.test.js.map +0 -1
- package/dist/test/lib/core/components/slides/question-slide.test.d.ts +0 -2
- package/dist/test/lib/core/components/slides/question-slide.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/slides/question-slide.test.js +0 -31
- package/dist/test/lib/core/components/slides/question-slide.test.js.map +0 -1
- package/dist/test/lib/core/components/slides/slide.test.d.ts +0 -2
- package/dist/test/lib/core/components/slides/slide.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/slides/slide.test.js +0 -31
- package/dist/test/lib/core/components/slides/slide.test.js.map +0 -1
- package/dist/test/lib/core/components/slides/title-slide.test.d.ts +0 -2
- package/dist/test/lib/core/components/slides/title-slide.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/slides/title-slide.test.js +0 -52
- package/dist/test/lib/core/components/slides/title-slide.test.js.map +0 -1
- package/dist/test/lib/core/components/utils/extract.test.d.ts +0 -2
- package/dist/test/lib/core/components/utils/extract.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/utils/extract.test.js +0 -88
- package/dist/test/lib/core/components/utils/extract.test.js.map +0 -1
- package/dist/test/lib/core/components/utils/fetch.test.d.ts +0 -2
- package/dist/test/lib/core/components/utils/fetch.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/utils/fetch.test.js +0 -62
- package/dist/test/lib/core/components/utils/fetch.test.js.map +0 -1
- package/dist/test/lib/core/components/utils/transform.test.d.ts +0 -2
- package/dist/test/lib/core/components/utils/transform.test.d.ts.map +0 -1
- package/dist/test/lib/core/components/utils/transform.test.js +0 -65
- package/dist/test/lib/core/components/utils/transform.test.js.map +0 -1
- package/dist/test/lib/core/defaults.test.d.ts +0 -2
- package/dist/test/lib/core/defaults.test.d.ts.map +0 -1
- package/dist/test/lib/core/defaults.test.js +0 -32
- package/dist/test/lib/core/defaults.test.js.map +0 -1
- package/dist/test/lib/core/markup/class.test.d.ts +0 -2
- package/dist/test/lib/core/markup/class.test.d.ts.map +0 -1
- package/dist/test/lib/core/markup/class.test.js +0 -68
- package/dist/test/lib/core/markup/class.test.js.map +0 -1
- package/dist/test/lib/core/markup/languages/latex.test.d.ts +0 -2
- package/dist/test/lib/core/markup/languages/latex.test.d.ts.map +0 -1
- package/dist/test/lib/core/markup/languages/latex.test.js +0 -22
- package/dist/test/lib/core/markup/languages/latex.test.js.map +0 -1
- package/dist/test/lib/core/markup/languages/lowercase.test.d.ts +0 -2
- package/dist/test/lib/core/markup/languages/lowercase.test.d.ts.map +0 -1
- package/dist/test/lib/core/markup/languages/lowercase.test.js +0 -26
- package/dist/test/lib/core/markup/languages/lowercase.test.js.map +0 -1
- package/dist/test/lib/core/markup/languages/markdown.test.d.ts +0 -2
- package/dist/test/lib/core/markup/languages/markdown.test.d.ts.map +0 -1
- package/dist/test/lib/core/markup/languages/markdown.test.js +0 -151
- package/dist/test/lib/core/markup/languages/markdown.test.js.map +0 -1
- package/dist/test/lib/core/markup/languages/plain.test.d.ts +0 -2
- package/dist/test/lib/core/markup/languages/plain.test.d.ts.map +0 -1
- package/dist/test/lib/core/markup/languages/plain.test.js +0 -26
- package/dist/test/lib/core/markup/languages/plain.test.js.map +0 -1
- package/dist/test/lib/core/markup/languages/slyde.test.d.ts +0 -2
- package/dist/test/lib/core/markup/languages/slyde.test.d.ts.map +0 -1
- package/dist/test/lib/core/markup/languages/slyde.test.js +0 -218
- package/dist/test/lib/core/markup/languages/slyde.test.js.map +0 -1
- package/dist/test/lib/core/markup/languages/uppercase.test.d.ts +0 -2
- package/dist/test/lib/core/markup/languages/uppercase.test.d.ts.map +0 -1
- package/dist/test/lib/core/markup/languages/uppercase.test.js +0 -26
- package/dist/test/lib/core/markup/languages/uppercase.test.js.map +0 -1
- package/dist/test/lib/core/markup/utils.test.d.ts +0 -2
- package/dist/test/lib/core/markup/utils.test.d.ts.map +0 -1
- package/dist/test/lib/core/markup/utils.test.js +0 -18
- package/dist/test/lib/core/markup/utils.test.js.map +0 -1
- package/dist/test/lib/core/registry.test.d.ts +0 -2
- package/dist/test/lib/core/registry.test.d.ts.map +0 -1
- package/dist/test/lib/core/registry.test.js +0 -120
- package/dist/test/lib/core/registry.test.js.map +0 -1
- package/dist/test/lib/core/render/processing-instructions.test.d.ts +0 -2
- package/dist/test/lib/core/render/processing-instructions.test.d.ts.map +0 -1
- package/dist/test/lib/core/render/processing-instructions.test.js +0 -68
- package/dist/test/lib/core/render/processing-instructions.test.js.map +0 -1
- package/dist/test/lib/core/render/render.test.d.ts +0 -2
- package/dist/test/lib/core/render/render.test.d.ts.map +0 -1
- package/dist/test/lib/core/render/render.test.js +0 -84
- package/dist/test/lib/core/render/render.test.js.map +0 -1
- package/dist/test/lib/core/render/utils.test.d.ts +0 -2
- package/dist/test/lib/core/render/utils.test.d.ts.map +0 -1
- package/dist/test/lib/core/render/utils.test.js +0 -161
- package/dist/test/lib/core/render/utils.test.js.map +0 -1
- package/dist/test/lib/logger.test.d.ts +0 -2
- package/dist/test/lib/logger.test.d.ts.map +0 -1
- package/dist/test/lib/logger.test.js +0 -64
- package/dist/test/lib/logger.test.js.map +0 -1
- package/dist/test/lib/types/base-path.test.d.ts +0 -2
- package/dist/test/lib/types/base-path.test.d.ts.map +0 -1
- package/dist/test/lib/types/base-path.test.js +0 -36
- package/dist/test/lib/types/base-path.test.js.map +0 -1
- package/dist/test/lib/types/log-level.test.d.ts +0 -2
- package/dist/test/lib/types/log-level.test.d.ts.map +0 -1
- package/dist/test/lib/types/log-level.test.js +0 -122
- package/dist/test/lib/types/log-level.test.js.map +0 -1
- package/dist/test/lib/types/optional.test.d.ts +0 -2
- package/dist/test/lib/types/optional.test.d.ts.map +0 -1
- package/dist/test/lib/types/optional.test.js +0 -116
- package/dist/test/lib/types/optional.test.js.map +0 -1
- package/dist/test/lib/types/result.test.d.ts +0 -2
- package/dist/test/lib/types/result.test.d.ts.map +0 -1
- package/dist/test/lib/types/result.test.js +0 -97
- package/dist/test/lib/types/result.test.js.map +0 -1
- package/dist/test/lib/utils/index.test.d.ts +0 -2
- package/dist/test/lib/utils/index.test.d.ts.map +0 -1
- package/dist/test/lib/utils/index.test.js +0 -27
- package/dist/test/lib/utils/index.test.js.map +0 -1
- package/dist/test/lib/utils/switch-case.test.d.ts +0 -2
- package/dist/test/lib/utils/switch-case.test.d.ts.map +0 -1
- package/dist/test/lib/utils/switch-case.test.js +0 -33
- package/dist/test/lib/utils/switch-case.test.js.map +0 -1
- package/dist/test/src/cli.test.d.ts +0 -2
- package/dist/test/src/cli.test.d.ts.map +0 -1
- package/dist/test/src/cli.test.js +0 -9
- package/dist/test/src/cli.test.js.map +0 -1
- package/dist/vitest.config.d.ts +0 -3
- package/dist/vitest.config.d.ts.map +0 -1
- package/dist/vitest.config.js +0 -30
- package/dist/vitest.config.js.map +0 -1
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test } from 'vitest';
|
|
2
|
-
import { MarkupRenderer } from '#lib/core/markup/class';
|
|
3
|
-
import { UpperCaseMarkupRenderer } from '#lib/core/markup/languages/uppercase';
|
|
4
|
-
describe('class LowerCaseMarkupRenderer extends MarkupRender', () => {
|
|
5
|
-
test(`is registered in the markup language registry`, () => {
|
|
6
|
-
const expected = UpperCaseMarkupRenderer;
|
|
7
|
-
const result = MarkupRenderer.retrieve(UpperCaseMarkupRenderer.name);
|
|
8
|
-
expect(expected).toBe(result);
|
|
9
|
-
});
|
|
10
|
-
test(`rendering an empty string to see if it stays a literal`, () => {
|
|
11
|
-
const input = '';
|
|
12
|
-
const result = new UpperCaseMarkupRenderer().render(input);
|
|
13
|
-
expect(result).toBe(input);
|
|
14
|
-
});
|
|
15
|
-
test('rendering text with no markers', () => {
|
|
16
|
-
const input = 'Just plain TEXT here';
|
|
17
|
-
const result = new UpperCaseMarkupRenderer().render(input);
|
|
18
|
-
expect(result).toBe(input.toUpperCase());
|
|
19
|
-
});
|
|
20
|
-
test(`rendering a marked for bold word`, () => {
|
|
21
|
-
const input = `**Word**`;
|
|
22
|
-
const result = new UpperCaseMarkupRenderer().render(input);
|
|
23
|
-
expect(result).toBe(input.toUpperCase());
|
|
24
|
-
});
|
|
25
|
-
});
|
|
26
|
-
//# sourceMappingURL=uppercase.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"uppercase.test.js","sourceRoot":"","sources":["../../../../../../test/lib/core/markup/languages/uppercase.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,QAAQ,CAAC,oDAAoD,EAAE,GAAG,EAAE;IAClE,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACzD,MAAM,QAAQ,GAAG,uBAAuB,CAAC;QACzC,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACrE,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAClE,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC1C,MAAM,KAAK,GAAG,sBAAsB,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC5C,MAAM,KAAK,GAAG,UAAU,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.test.d.ts","sourceRoot":"","sources":["../../../../../test/lib/core/markup/utils.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test } from 'vitest';
|
|
2
|
-
import { wrapMarkedError } from '#lib/core/markup/utils';
|
|
3
|
-
const remove = 'Please report this to https://github.com/markedjs/marked.';
|
|
4
|
-
describe('function wrapMarkedError', () => {
|
|
5
|
-
test(`returns an error`, () => {
|
|
6
|
-
const input = new Error(`this is a error:\n${remove}`);
|
|
7
|
-
expect(wrapMarkedError(input).message).not.toContain(remove);
|
|
8
|
-
});
|
|
9
|
-
test(`returns an error from a string`, () => {
|
|
10
|
-
const input = `this is a error:\n${remove}`;
|
|
11
|
-
expect(wrapMarkedError(input).message).not.toContain(remove);
|
|
12
|
-
});
|
|
13
|
-
test(`throws all else`, () => {
|
|
14
|
-
const input = 1;
|
|
15
|
-
expect(() => wrapMarkedError(input)).toThrow();
|
|
16
|
-
});
|
|
17
|
-
});
|
|
18
|
-
//# sourceMappingURL=utils.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../../../../test/lib/core/markup/utils.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,MAAM,GAAG,2DAA2D,CAAC;AAE3E,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC5B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;QACvD,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC1C,MAAM,KAAK,GAAG,qBAAqB,MAAM,EAAE,CAAC;QAC5C,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC3B,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,MAAM,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACjD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registry.test.d.ts","sourceRoot":"","sources":["../../../../test/lib/core/registry.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
/* eslint-disable max-classes-per-file */
|
|
2
|
-
import { Registry, addXmlNameSpace, createVariations, createVariationsByRemovingSubstring, } from '#lib/core/registry';
|
|
3
|
-
import { describe, expect, test } from 'vitest';
|
|
4
|
-
// Tests: createVariations
|
|
5
|
-
describe('function createVariations', () => {
|
|
6
|
-
test('Does not create kebab-case when not asked to', () => {
|
|
7
|
-
const input = 'TestTest';
|
|
8
|
-
const output = createVariations([input], false);
|
|
9
|
-
expect(output).toContain(input);
|
|
10
|
-
expect(output).not.toContain('test-test');
|
|
11
|
-
});
|
|
12
|
-
test('Does create kebab-case when asked to', () => {
|
|
13
|
-
const input = 'TestTest';
|
|
14
|
-
const output = createVariations([input], true);
|
|
15
|
-
expect(output).toContain(input);
|
|
16
|
-
expect(output).toContain('test-test');
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
// Tests: createVariationsByRemovingSubstring
|
|
20
|
-
describe('function createVariationsByRemovingSubstring', () => {
|
|
21
|
-
test('removes substring out of array', () => {
|
|
22
|
-
const starter = 'TestEntry';
|
|
23
|
-
const input = createVariations([starter], true);
|
|
24
|
-
const substrings = createVariations(['Entry'], true);
|
|
25
|
-
const output = createVariationsByRemovingSubstring(input, substrings);
|
|
26
|
-
expect(output).toContain(starter);
|
|
27
|
-
expect(output).toContain('Test');
|
|
28
|
-
expect(output, output.toString()).toContain('test');
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
// Tests: addXmlNameSpace
|
|
32
|
-
describe('function addXmlNameSpace', () => {
|
|
33
|
-
test('Adds plugin prefix for plugins', () => {
|
|
34
|
-
const plugin = true;
|
|
35
|
-
const input = 'Test';
|
|
36
|
-
const output = addXmlNameSpace([input], plugin);
|
|
37
|
-
expect(output).toContain(input);
|
|
38
|
-
expect(output).toContain(`plugin:${input}`);
|
|
39
|
-
});
|
|
40
|
-
test('Adds slyde prefix for non-plugins', () => {
|
|
41
|
-
const plugin = false;
|
|
42
|
-
const input = 'Test';
|
|
43
|
-
const output = addXmlNameSpace([input], plugin);
|
|
44
|
-
expect(output).toContain(input);
|
|
45
|
-
expect(output).toContain(`slyde:${input}`);
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
// Tests: Registry
|
|
49
|
-
describe('class Registry', () => {
|
|
50
|
-
test('Creates instance with arguments', () => {
|
|
51
|
-
const extensiveAliases = false;
|
|
52
|
-
const name = 'test-0';
|
|
53
|
-
const substrings = [];
|
|
54
|
-
const opts = {
|
|
55
|
-
extensiveAliases,
|
|
56
|
-
name,
|
|
57
|
-
substrings,
|
|
58
|
-
};
|
|
59
|
-
const registry = new Registry(opts);
|
|
60
|
-
expect(registry).toBeInstanceOf(Registry);
|
|
61
|
-
expect(registry.name).toBe(name);
|
|
62
|
-
expect(registry.extensiveAliases).toBe(extensiveAliases);
|
|
63
|
-
expect(registry.substrings).toStrictEqual(substrings);
|
|
64
|
-
});
|
|
65
|
-
test('Registry.inject(class Class {})', () => {
|
|
66
|
-
const Class = Registry.inject(class Class {
|
|
67
|
-
str;
|
|
68
|
-
});
|
|
69
|
-
expect(Class.registry).toBeInstanceOf(Registry);
|
|
70
|
-
expect(Class.registry.name).toBe(Class.name);
|
|
71
|
-
});
|
|
72
|
-
test('Registry.inject.with({ ... })(class C {})', () => {
|
|
73
|
-
const extensiveAliases = false;
|
|
74
|
-
const name = 'test-1';
|
|
75
|
-
const substrings = [];
|
|
76
|
-
const Class = Registry.inject.using({ extensiveAliases, name, substrings })(class Class {
|
|
77
|
-
str;
|
|
78
|
-
});
|
|
79
|
-
expect(Class.registry).toBeInstanceOf(Registry);
|
|
80
|
-
expect(Class.registry.name).toBe(name);
|
|
81
|
-
expect(Class.registry.extensiveAliases).toBe(extensiveAliases);
|
|
82
|
-
expect(Class.registry.substrings).toStrictEqual(substrings);
|
|
83
|
-
});
|
|
84
|
-
test('Registry.register(class C {}) means Registry.keys contains "C"', () => {
|
|
85
|
-
const extensiveAliases = false;
|
|
86
|
-
const name = 'test-1';
|
|
87
|
-
const substrings = [];
|
|
88
|
-
const Class = Registry.inject.using({ extensiveAliases, name, substrings })(class Class {
|
|
89
|
-
str;
|
|
90
|
-
});
|
|
91
|
-
const Class2 = class Class2 extends Class {
|
|
92
|
-
};
|
|
93
|
-
expect(Class.keys()).not.toContain(Class2.name);
|
|
94
|
-
Class.register(Class2);
|
|
95
|
-
expect(Class.keys()).toContain(Class2.name);
|
|
96
|
-
expect(Class.retrieve(Class2.name)).toStrictEqual(Class2);
|
|
97
|
-
});
|
|
98
|
-
test('Registry.register.using({ ... })(class C {})', () => {
|
|
99
|
-
const extensiveAliases = false;
|
|
100
|
-
const name = 'test-2';
|
|
101
|
-
const substrings = [];
|
|
102
|
-
const Class = Registry.inject.using({ extensiveAliases, name, substrings })(class Class {
|
|
103
|
-
str;
|
|
104
|
-
});
|
|
105
|
-
const newName = 'find me';
|
|
106
|
-
const aliases = ['also'];
|
|
107
|
-
const Class2 = class Class2 extends Class {
|
|
108
|
-
};
|
|
109
|
-
expect(Class.keys()).not.toContain(newName);
|
|
110
|
-
expect(Class.keys()).not.toContain(Class2.name);
|
|
111
|
-
for (const alias of aliases)
|
|
112
|
-
expect(Class.keys()).not.toContain(alias);
|
|
113
|
-
Class.register.using({ aliases, name: newName })(Class2);
|
|
114
|
-
expect(Class.keys()).not.toContain(Class2.name);
|
|
115
|
-
for (const alias of aliases)
|
|
116
|
-
expect(Class.keys()).toContain(alias);
|
|
117
|
-
expect(Class.keys()).toContain(newName);
|
|
118
|
-
});
|
|
119
|
-
});
|
|
120
|
-
//# sourceMappingURL=registry.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registry.test.js","sourceRoot":"","sources":["../../../../test/lib/core/registry.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"processing-instructions.test.d.ts","sourceRoot":"","sources":["../../../../../test/lib/core/render/processing-instructions.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { Globals } from '#lib/core/render/types';
|
|
2
|
-
import { afterEach, describe, expect, test, vi } from 'vitest';
|
|
3
|
-
import { useEngineInstruction, useProcessingInstruction, } from '#lib/core/render/processing-instructions';
|
|
4
|
-
import { Logger } from '#lib/logger';
|
|
5
|
-
import { SlydeMarkupRenderer } from '#lib/core/markup/languages/slyde';
|
|
6
|
-
const warnSpy = vi.spyOn(Logger, 'warn').mockImplementation(() => {
|
|
7
|
-
// We do nothing with any of the arguments...
|
|
8
|
-
});
|
|
9
|
-
// Mock package version
|
|
10
|
-
vi.mock('#package', () => ({ default: { version: '1.2.3' } }));
|
|
11
|
-
const baseState = {
|
|
12
|
-
globals: Globals.instance,
|
|
13
|
-
id: 0,
|
|
14
|
-
level: 0,
|
|
15
|
-
markup: SlydeMarkupRenderer.name,
|
|
16
|
-
notes: [],
|
|
17
|
-
path: 'test path',
|
|
18
|
-
};
|
|
19
|
-
describe('useEngineInstruction', () => {
|
|
20
|
-
afterEach(() => warnSpy.mockReset());
|
|
21
|
-
test('valid range and satisfies', () => {
|
|
22
|
-
const state = useEngineInstruction(baseState, { name: 'engine', value: '>=1.0.0' });
|
|
23
|
-
expect(state).toEqual(baseState);
|
|
24
|
-
expect(warnSpy).not.toHaveBeenCalled();
|
|
25
|
-
});
|
|
26
|
-
test('valid range but does not satisfy', () => {
|
|
27
|
-
useEngineInstruction(baseState, { name: 'engine', value: '<1.0.0' });
|
|
28
|
-
expect(warnSpy).toHaveBeenCalled();
|
|
29
|
-
});
|
|
30
|
-
test('invalid range', () => {
|
|
31
|
-
useEngineInstruction(baseState, { name: 'engine', value: 'not-a-range' });
|
|
32
|
-
expect(warnSpy).toHaveBeenCalled();
|
|
33
|
-
});
|
|
34
|
-
});
|
|
35
|
-
describe('useProcessingInstruction', () => {
|
|
36
|
-
afterEach(() => warnSpy.mockReset());
|
|
37
|
-
test('markup instruction', () => {
|
|
38
|
-
const instruction = { name: 'markup', value: 'markdown' };
|
|
39
|
-
const state = useProcessingInstruction(baseState, instruction);
|
|
40
|
-
expect(state.markup).toBe(instruction.value);
|
|
41
|
-
});
|
|
42
|
-
test('engine instruction', () => {
|
|
43
|
-
const state = useProcessingInstruction(baseState, { name: 'engine', value: '>=1.0.0' });
|
|
44
|
-
expect(state).toEqual(baseState);
|
|
45
|
-
});
|
|
46
|
-
test('unimplemented instructions', () => {
|
|
47
|
-
useProcessingInstruction(baseState, { name: 'transition', value: 'something' });
|
|
48
|
-
expect(warnSpy).toHaveBeenCalled();
|
|
49
|
-
useProcessingInstruction(baseState, { name: 'include', value: 'something' });
|
|
50
|
-
expect(warnSpy).toHaveBeenCalled();
|
|
51
|
-
});
|
|
52
|
-
test('unknown instruction', () => {
|
|
53
|
-
const instruction = { name: 'unknown', value: '123' };
|
|
54
|
-
useProcessingInstruction(baseState, instruction);
|
|
55
|
-
expect(warnSpy).toHaveBeenCalled();
|
|
56
|
-
});
|
|
57
|
-
test('from XML object translates to separate attributes', () => {
|
|
58
|
-
const SPECIFIC = 'SPECIFIC';
|
|
59
|
-
const instruction = {
|
|
60
|
-
content: `markup="${SPECIFIC}"`,
|
|
61
|
-
name: 'slyde',
|
|
62
|
-
type: 'ProcessingInstruction',
|
|
63
|
-
};
|
|
64
|
-
const state = useProcessingInstruction(baseState, instruction);
|
|
65
|
-
expect(state.markup).toBe(SPECIFIC);
|
|
66
|
-
});
|
|
67
|
-
});
|
|
68
|
-
//# sourceMappingURL=processing-instructions.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"processing-instructions.test.js","sourceRoot":"","sources":["../../../../../test/lib/core/render/processing-instructions.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"render.test.d.ts","sourceRoot":"","sources":["../../../../../test/lib/core/render/render.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { Globals } from '#lib/core/render/types';
|
|
2
|
-
import { afterEach, describe, expect, test, vi } from 'vitest';
|
|
3
|
-
import { handleComment, handleDocType, render, renderText } from '#lib/core/render/render';
|
|
4
|
-
import parseXml from 'xml-parser-xo';
|
|
5
|
-
import { Component } from '#lib/core/components';
|
|
6
|
-
import { Logger } from '#lib/logger';
|
|
7
|
-
import { SlydeMarkupRenderer } from '#lib/core/markup/languages/slyde';
|
|
8
|
-
const warnSpy = vi.spyOn(Logger, 'warn').mockImplementation(() => {
|
|
9
|
-
// We do nothing with any of the arguments...
|
|
10
|
-
});
|
|
11
|
-
describe('function handleDocType', () => {
|
|
12
|
-
afterEach(() => warnSpy.mockReset());
|
|
13
|
-
test('DocType with slyde', () => {
|
|
14
|
-
const input = {
|
|
15
|
-
content: 'nope',
|
|
16
|
-
type: 'DocumentType',
|
|
17
|
-
};
|
|
18
|
-
handleDocType(input);
|
|
19
|
-
expect(warnSpy).toHaveBeenCalled();
|
|
20
|
-
});
|
|
21
|
-
test('DocType with slyde', () => {
|
|
22
|
-
const input = {
|
|
23
|
-
content: 'slyde',
|
|
24
|
-
type: 'DocumentType',
|
|
25
|
-
};
|
|
26
|
-
handleDocType(input);
|
|
27
|
-
expect(warnSpy).not.toHaveBeenCalled();
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
describe('function handleComment', () => {
|
|
31
|
-
test('adds comment to notes', () => {
|
|
32
|
-
let state = {
|
|
33
|
-
globals: Globals.instance,
|
|
34
|
-
id: 45,
|
|
35
|
-
level: Component.level.presentation,
|
|
36
|
-
markup: SlydeMarkupRenderer.name,
|
|
37
|
-
notes: [],
|
|
38
|
-
path: '//',
|
|
39
|
-
};
|
|
40
|
-
const content = 'This is a comment';
|
|
41
|
-
const comment = { content, type: 'Comment' };
|
|
42
|
-
state = handleComment(state, comment);
|
|
43
|
-
expect(state.notes).toContain(content);
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
describe('function renderText', () => {
|
|
47
|
-
test('renders text using a MarkupRenderer', async () => {
|
|
48
|
-
const state = {
|
|
49
|
-
globals: Globals.instance,
|
|
50
|
-
id: 45,
|
|
51
|
-
level: Component.level.presentation,
|
|
52
|
-
markup: SlydeMarkupRenderer.name,
|
|
53
|
-
notes: [],
|
|
54
|
-
path: '//',
|
|
55
|
-
};
|
|
56
|
-
const content = 'This is a piece of **MARKED UP** text';
|
|
57
|
-
const comment = { content, type: 'Text' };
|
|
58
|
-
const result = await renderText(state, comment);
|
|
59
|
-
expect(result).not.toBe(content);
|
|
60
|
-
});
|
|
61
|
-
});
|
|
62
|
-
const SPECIFIC = 'SPECIFIC';
|
|
63
|
-
// eslint-disable-next-line no-inline-comments
|
|
64
|
-
const document = /*XML*/ `
|
|
65
|
-
<!DOCTYPE slyde>
|
|
66
|
-
<?slyde markup="default" ?>
|
|
67
|
-
<presentation>
|
|
68
|
-
<slide title="Why you should use Slyde">
|
|
69
|
-
<!-- These are my slide notes in case I forget what to say -->
|
|
70
|
-
<point>It is super **fast** and __easy__ to make slides</point>
|
|
71
|
-
<point>The animations are ^^gorgeous^^!</point>
|
|
72
|
-
<point>Recipient //only// needs a browser to open it</point>
|
|
73
|
-
<point>You can even use latex: $$\\forall_i[ i \\in \\mathbb{N} : i + 1 \\gt i ]$$</point>
|
|
74
|
-
<point><![CDATA[${SPECIFIC}]]></point>
|
|
75
|
-
</slide>
|
|
76
|
-
</presentation>`;
|
|
77
|
-
describe('function render', () => {
|
|
78
|
-
test('renders text using a MarkupRenderer', async () => {
|
|
79
|
-
const parsed = parseXml(document, { strictMode: true });
|
|
80
|
-
const result = await render(parsed);
|
|
81
|
-
expect(result).to.include(SPECIFIC);
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
//# sourceMappingURL=render.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"render.test.js","sourceRoot":"","sources":["../../../../../test/lib/core/render/render.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.test.d.ts","sourceRoot":"","sources":["../../../../../test/lib/core/render/utils.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
import { Component, Point } from '#lib/core/components/index';
|
|
2
|
-
import { Globals } from '#lib/core/render/types';
|
|
3
|
-
import { MarkupRenderer, SlydeMarkupRenderer } from '#lib/core/markup/index';
|
|
4
|
-
import { createComponentInstance, getAttributes, getMarkupRenderer, wrapper, } from '#lib/core/render/utils';
|
|
5
|
-
import { describe, expect, test } from 'vitest';
|
|
6
|
-
describe('function wrapper', () => {
|
|
7
|
-
const component = {
|
|
8
|
-
attributes: {},
|
|
9
|
-
canBeAtLevel() {
|
|
10
|
-
throw new Error('Function not implemented.');
|
|
11
|
-
},
|
|
12
|
-
display: '',
|
|
13
|
-
focusMode: 'follows',
|
|
14
|
-
// eslint-disable-next-line no-void
|
|
15
|
-
height: void 0,
|
|
16
|
-
hierarchy() {
|
|
17
|
-
throw new Error('Function not implemented.');
|
|
18
|
-
},
|
|
19
|
-
id: '',
|
|
20
|
-
level: Component.level.block,
|
|
21
|
-
name: Point.name,
|
|
22
|
-
path: '',
|
|
23
|
-
render() {
|
|
24
|
-
throw new Error('Function not implemented.');
|
|
25
|
-
},
|
|
26
|
-
// eslint-disable-next-line no-void
|
|
27
|
-
width: void 0,
|
|
28
|
-
};
|
|
29
|
-
const state = {
|
|
30
|
-
globals: Globals.instance,
|
|
31
|
-
id: 0,
|
|
32
|
-
level: Component.level.block,
|
|
33
|
-
markup: SlydeMarkupRenderer.name,
|
|
34
|
-
notes: [],
|
|
35
|
-
/// TODO change later when we change the component interface to reflect the change
|
|
36
|
-
path: ['test', 'path'],
|
|
37
|
-
};
|
|
38
|
-
const children = '<VERY-SPECIFIC-PATTERN>';
|
|
39
|
-
test('extracting empty string', () => {
|
|
40
|
-
const result = wrapper(component, state, children);
|
|
41
|
-
expect(result).toContain(children);
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
describe('function getAttributes', () => {
|
|
45
|
-
test('extracting empty string', () => {
|
|
46
|
-
const input = '';
|
|
47
|
-
const result = getAttributes(input);
|
|
48
|
-
expect(result.length).toBe(0);
|
|
49
|
-
});
|
|
50
|
-
test('extracting a single attribute', () => {
|
|
51
|
-
const name = 'name';
|
|
52
|
-
const value = 'value';
|
|
53
|
-
const input = `${name}="${value}"`;
|
|
54
|
-
const result = getAttributes(input);
|
|
55
|
-
expect(result.length).toBe(1);
|
|
56
|
-
expect(result[0]).toStrictEqual({ name, value });
|
|
57
|
-
});
|
|
58
|
-
test('extracting two attributes', () => {
|
|
59
|
-
const name1 = 'name1';
|
|
60
|
-
const value1 = 'value1';
|
|
61
|
-
const name2 = 'name1';
|
|
62
|
-
const value2 = 'value2';
|
|
63
|
-
const input = `${name1}="${value1}" ${name2}="${value2}"`;
|
|
64
|
-
const result = getAttributes(input);
|
|
65
|
-
expect(result).toStrictEqual([
|
|
66
|
-
{ name: name1, value: value1 },
|
|
67
|
-
{ name: name2, value: value2 },
|
|
68
|
-
]);
|
|
69
|
-
});
|
|
70
|
-
test('extracting two attributes with a lot of space in between', () => {
|
|
71
|
-
const name1 = 'name1';
|
|
72
|
-
const value1 = 'value1';
|
|
73
|
-
const name2 = 'name1';
|
|
74
|
-
const value2 = 'value2';
|
|
75
|
-
const input = `${name1}="${value1}" ${name2}="${value2}"`;
|
|
76
|
-
const result = getAttributes(input);
|
|
77
|
-
expect(result).toStrictEqual([
|
|
78
|
-
{ name: name1, value: value1 },
|
|
79
|
-
{ name: name2, value: value2 },
|
|
80
|
-
]);
|
|
81
|
-
});
|
|
82
|
-
test('extracting unquoted values', () => {
|
|
83
|
-
const name = 'name';
|
|
84
|
-
const value = 'value';
|
|
85
|
-
const input = `${name}=${value}`;
|
|
86
|
-
const result = getAttributes(input);
|
|
87
|
-
expect(result).toStrictEqual([{ name, value }]);
|
|
88
|
-
});
|
|
89
|
-
test('attribute names with dashes and colons', () => {
|
|
90
|
-
const input = `data-id="123" link:href="test"`;
|
|
91
|
-
expect(getAttributes(input)).toStrictEqual([
|
|
92
|
-
{ name: 'data-id', value: '123' },
|
|
93
|
-
{ name: 'link:href', value: 'test' },
|
|
94
|
-
]);
|
|
95
|
-
});
|
|
96
|
-
test('value containing spaces', () => {
|
|
97
|
-
const input = `title="hello world"`;
|
|
98
|
-
const result = getAttributes(input);
|
|
99
|
-
expect(result).toStrictEqual([{ name: 'title', value: 'hello world' }]);
|
|
100
|
-
});
|
|
101
|
-
test('greater-than sign in attributes', () => {
|
|
102
|
-
const input = `a="1" b=">2"`;
|
|
103
|
-
expect(getAttributes(input)).toStrictEqual([
|
|
104
|
-
{ name: 'a', value: '1' },
|
|
105
|
-
{ name: 'b', value: '>2' },
|
|
106
|
-
]);
|
|
107
|
-
});
|
|
108
|
-
// Currently not working, don't want to block release.
|
|
109
|
-
test('invalid attribute without equals is not ignored', () => {
|
|
110
|
-
const input = `a="1" enabled b="2"`;
|
|
111
|
-
const result = getAttributes(input);
|
|
112
|
-
expect(result).toStrictEqual([
|
|
113
|
-
{ name: 'a', value: '1' },
|
|
114
|
-
{ name: 'enabled', value: '' },
|
|
115
|
-
{ name: 'b', value: '2' },
|
|
116
|
-
]);
|
|
117
|
-
});
|
|
118
|
-
});
|
|
119
|
-
describe('function getMarkupRenderer', () => {
|
|
120
|
-
test('returns markup renderer', () => {
|
|
121
|
-
const renderer = getMarkupRenderer(SlydeMarkupRenderer.name);
|
|
122
|
-
expect(renderer).toBeInstanceOf(MarkupRenderer);
|
|
123
|
-
});
|
|
124
|
-
test('Getting default MarkupRenderer', () => {
|
|
125
|
-
const call = () => getMarkupRenderer(SlydeMarkupRenderer.name);
|
|
126
|
-
expect(call).not.toThrow();
|
|
127
|
-
});
|
|
128
|
-
test('Getting a MarkupRenderer with garbage input', () => {
|
|
129
|
-
expect(() => getMarkupRenderer('G4RB4G3')).toThrow();
|
|
130
|
-
});
|
|
131
|
-
});
|
|
132
|
-
describe('function createComponentInstance', () => {
|
|
133
|
-
const node = {
|
|
134
|
-
attributes: {},
|
|
135
|
-
children: null,
|
|
136
|
-
name: Point.name,
|
|
137
|
-
type: 'Element',
|
|
138
|
-
};
|
|
139
|
-
const state = {
|
|
140
|
-
globals: Globals.instance,
|
|
141
|
-
id: 0,
|
|
142
|
-
level: Component.level.block,
|
|
143
|
-
markup: SlydeMarkupRenderer.name,
|
|
144
|
-
/// TODO change later when we change the component interface to reflect the change
|
|
145
|
-
notes: [],
|
|
146
|
-
path: ['test', 'path'],
|
|
147
|
-
};
|
|
148
|
-
test('returns Component instance', () => {
|
|
149
|
-
const component = createComponentInstance(node, state);
|
|
150
|
-
expect(component).toBeInstanceOf(Component);
|
|
151
|
-
});
|
|
152
|
-
test('Getting a Component', () => {
|
|
153
|
-
const call = () => createComponentInstance(node, state);
|
|
154
|
-
expect(call).not.toThrow();
|
|
155
|
-
});
|
|
156
|
-
test('Getting a Component with garbage input', () => {
|
|
157
|
-
const element = { ...node, name: 'G4RB4G3' };
|
|
158
|
-
expect(() => createComponentInstance(element, state)).toThrow();
|
|
159
|
-
});
|
|
160
|
-
});
|
|
161
|
-
//# sourceMappingURL=utils.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../../../../test/lib/core/render/utils.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logger.test.d.ts","sourceRoot":"","sources":["../../../test/lib/logger.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { LogLevel, Logger } from '#lib';
|
|
2
|
-
import { afterEach, beforeAll, describe, expect, test, vi } from 'vitest';
|
|
3
|
-
describe('class Logger', () => {
|
|
4
|
-
// Tests for the `Logger` class
|
|
5
|
-
const spy = vi.fn(Logger.DEV_NULL);
|
|
6
|
-
beforeAll(() => {
|
|
7
|
-
Logger.logLevel = Logger.DEFAULT_LOG_LEVEL;
|
|
8
|
-
Logger.DEFAULT_FUNCTIONS = {
|
|
9
|
-
[LogLevel.TRACE]: spy,
|
|
10
|
-
[LogLevel.DEBUG]: spy,
|
|
11
|
-
[LogLevel.INFO]: spy,
|
|
12
|
-
[LogLevel.WARN]: spy,
|
|
13
|
-
[LogLevel.ERROR]: spy,
|
|
14
|
-
[LogLevel.CRITICAL]: spy,
|
|
15
|
-
[LogLevel.SILENT]: spy,
|
|
16
|
-
};
|
|
17
|
-
});
|
|
18
|
-
afterEach(() => vi.restoreAllMocks());
|
|
19
|
-
test('Logger.logLevel === Logger.DEFAULT_LOG_LEVEL', () => {
|
|
20
|
-
expect(Logger.logLevel).toBe(Logger.DEFAULT_LOG_LEVEL);
|
|
21
|
-
});
|
|
22
|
-
test('Logger.logLevel = LogLevel.X -> Logger.logLevel === LogLevel.X ', () => {
|
|
23
|
-
for (const level of LogLevel.options) {
|
|
24
|
-
Logger.logLevel = level;
|
|
25
|
-
expect(Logger.logLevel).toBe(level);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
test('Logger.XYZ() to exist for XYY = debug | info | ...', () => {
|
|
29
|
-
for (const level of LogLevel.options) {
|
|
30
|
-
if (level === LogLevel.SILENT)
|
|
31
|
-
continue;
|
|
32
|
-
const message = `Expect ${level} to be a function on the logger`;
|
|
33
|
-
expect(Logger[level], message).toBeDefined();
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
test('if Logger.logLevel is less verbose then function print nothing', () => {
|
|
37
|
-
// Most verbose `LogLevel`:
|
|
38
|
-
Logger.logLevel = LogLevel.options[0];
|
|
39
|
-
for (const level of LogLevel.options) {
|
|
40
|
-
expect(Logger.DEFAULT_FUNCTIONS[level]).not.toBe(Logger.DEV_NULL);
|
|
41
|
-
expect(Logger.functions[level]).not.toBe(Logger.DEV_NULL);
|
|
42
|
-
}
|
|
43
|
-
// Least verbose `LogLevel`:
|
|
44
|
-
Logger.logLevel = LogLevel.options[LogLevel.options.length - 1];
|
|
45
|
-
for (const level of LogLevel.options) {
|
|
46
|
-
if (LogLevel.of(level).isLessOrAsVerboseAs(Logger.logLevel))
|
|
47
|
-
continue;
|
|
48
|
-
expect(Logger.DEFAULT_FUNCTIONS[level]).not.toBe(Logger.DEV_NULL);
|
|
49
|
-
expect(Logger.functions[level]).toBe(Logger.DEV_NULL);
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
test("Logger.XYZ() to print through it's function for XYZ = debug | info | ...", () => {
|
|
53
|
-
for (const level of LogLevel.options) {
|
|
54
|
-
if (level === LogLevel.SILENT)
|
|
55
|
-
continue;
|
|
56
|
-
Logger.logLevel = level;
|
|
57
|
-
const message = 'Hello, World!';
|
|
58
|
-
const key = level;
|
|
59
|
-
Logger[key](message);
|
|
60
|
-
expect(spy).toHaveBeenCalledWith(expect.any(String), message);
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
//# sourceMappingURL=logger.test.js.map
|