UNPKG

babel-plugin-transform-loadable-component

Version:

Transform react component to loadable component

47 lines (40 loc) 1.31 kB
const _ = require('lodash') const { transformFileSync } = require('babel-core') const transformRuntime = require('babel-plugin-transform-runtime') const syntaxJsx= require('babel-plugin-syntax-jsx') const fs = require('fs') const path = require('path') const glob = require('glob') const babelPluginTransformLoadableComponent = require('../lib') const opts = { plugins: [ syntaxJsx, transformRuntime, babelPluginTransformLoadableComponent, ] } const getTestName = (testPath) => path.basename(testPath).split('-').join(' ') const getSubFixtures = (name) => { const testPaths = glob.sync( path.resolve(__dirname, `${name}/*/`) ) return _.map(testPaths, (testPath) => { const testName = getTestName(testPath) const actualPath = path.resolve(testPath, 'actual.js') const expectedPath = path.resolve(testPath, 'expected.js') return { testName, actualPath, expectedPath, } }) } describe('transform spec component to react-loadable', () => { _.each(getSubFixtures('fixtures'), ({ testName, actualPath, expectedPath }) => { test(testName, () => { const expected = fs.readFileSync(expectedPath, 'utf8') const actual = transformFileSync(actualPath, opts).code expect(_.trim(expected)).toEqual(_.trim(actual)) }) }) })