UNPKG

1.85 kBJavaScriptView Raw
1const test = require('ava')
2const path = require('path')
3const { generateContentForStoryIndex, generateStoryIndex } = require('../lib/story-index-generator')
4
5test(`generateContentForStoryIndex: check relative path generation
6when pathToStories is two levels deep`, (t) => {
7 const pathToSrc = `${__dirname}/../example-src`
8 const pathToStories = `${__dirname}/stories`
9 const { content: actual } = generateContentForStoryIndex(pathToSrc, pathToStories)
10 const expected = `const {storyGenerator} = require('spdt')
11require('../../example-src/components/simple-component.story.js').default(
12 storyGenerator,
13)
14`
15 t.is(actual, expected)
16})
17
18test(`generateContentForStoryIndex: check relative path generation
19when pathToStories is one level deep`, (t) => {
20 const pathToSrc = `${__dirname}/../example-src`
21 const pathToStories = `${__dirname}/../stories`
22 const { content: actual } = generateContentForStoryIndex(pathToSrc, pathToStories)
23 const expected = `const {storyGenerator} = require('spdt')
24require('../example-src/components/simple-component.story.js').default(
25 storyGenerator,
26)
27`
28 t.is(actual, expected)
29})
30
31test(`generateStoryIndex: should return Either.Left with error message`, (t) => {
32 const pathToSrc = `${__dirname}/../example-src`
33 const nonExistedPathToStories = `${__dirname}/../stories`
34 const actual = generateStoryIndex(pathToSrc, nonExistedPathToStories)
35 t.true(actual.isLeft())
36})
37
38test(`generateStoryIndex: should return list of found .story.js files`, (t) => {
39 const pathToSrc = `${__dirname}/../example-src`
40 const existedPathToStories = `${__dirname}/stories`
41 const actual = generateStoryIndex(pathToSrc, existedPathToStories)
42 const expected = [path.resolve(__dirname, '../example-src/components/simple-component.story.js')]
43 t.true(actual.isRight())
44 t.deepEqual(actual.right(), expected)
45})