diff --git a/__tests__/defineClass.test.js b/__tests__/defineClass.test.js new file mode 100644 index 000000000..369e92f70 --- /dev/null +++ b/__tests__/defineClass.test.js @@ -0,0 +1,38 @@ +import postcss from 'postcss' +import fs from 'fs' +import _ from 'lodash' +import defineClass from '../src/util/defineClass' + +let flexHelper = `.flex { + display: flex +}` + +let inlineBlock = `.inline-block { + display: inline-block +}` + +let inlineFlexHelper = `.inline-flex { + display: inline-flex +}` + +let backgroundColor = `.bg-1 { + background-color: #bada55 +}` + +/** + * Tests + */ +it('creates a proper single-word class with rules', () => { + let output = defineClass('flex', {display: 'flex'}) + expect(output.toString()).toEqual(flexHelper) +}) + +it('generates a rule with a kebab-case selector', () => { + let output = defineClass('inlineBlock', {display: 'inline-block'}) + expect(output.toString()).toEqual(inlineBlock) +}) + +it('generates a rule with a kebab-case property name', () => { + let output = defineClass('bg-1', {backgroundColor: '#bada55'}) + expect(output.toString()).toEqual(backgroundColor) +}) diff --git a/tests/defineClasses.test.js b/__tests__/defineClasses.test.js similarity index 53% rename from tests/defineClasses.test.js rename to __tests__/defineClasses.test.js index 9481a8bfd..5e5dbdbc7 100644 --- a/tests/defineClasses.test.js +++ b/__tests__/defineClasses.test.js @@ -1,9 +1,9 @@ -var postcss = require('postcss') -var fs = require('fs') -var _ = require('lodash') -var defineClasses = require('../src/util/defineClasses') +import postcss from 'postcss' +import fs from 'fs' +import _ from 'lodash' +import defineClasses from '../src/util/defineClasses' -var config = { +let config = { flex: { display: 'flex', }, @@ -12,19 +12,19 @@ var config = { }, } -var flexHelper = `.flex { - display: flex +let flexHelper = `.flex { + display: flex }` -var inlineFlexHelper = `.inline-flex { - display: inline-flex +let inlineFlexHelper = `.inline-flex { + display: inline-flex }` /** * Tests */ it('it generates a set of helper classes from a config', () => { - output = defineClasses(config) + let output = defineClasses(config) expect(output).toBeInstanceOf(Array) expect(output[0].toString()).toEqual(flexHelper) expect(output[1].toString()).toEqual(inlineFlexHelper) diff --git a/package.json b/package.json index eb02f4ee3..8a22bf782 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "devDependencies": { "babel-cli": "^6.6.5", "babel-core": "^6.7.2", + "babel-jest": "^20.0.3", "babel-loader": "^6.2.4", "babel-preset-env": "^1.0.0", "babel-preset-react": "^6.5.0", diff --git a/tests/defineClass.test.js b/tests/defineClass.test.js deleted file mode 100644 index 9139d4dc9..000000000 --- a/tests/defineClass.test.js +++ /dev/null @@ -1,38 +0,0 @@ -var postcss = require('postcss') -var fs = require('fs') -var _ = require('lodash') -var defineClass = require('../src/util/defineClass') - -var flexHelper = `.flex { - display: flex -}` - -var inlineBlock = `.inline-block { - display: inline-block -}` - -var inlineFlexHelper = `.inline-flex { - display: inline-flex -}` - -var backgroundColor = `.bg-1 { - background-color: #bada55 -}` - -/** - * Tests - */ -it('creates a proper single-word class with rules', () => { - let output = defineClass('flex', { display: 'flex' }) - expect(output.toString()).toEqual(flexHelper) -}) - -it('generates a rule with a kebab-case selector', () => { - let output = defineClass('inlineBlock', { display: 'inline-block' }) - expect(output.toString()).toEqual(inlineBlock) -}) - -it('generates a rule with a kebab-case property name', () => { - let output = defineClass('bg-1', { backgroundColor: '#bada55' }) - expect(output.toString()).toEqual(backgroundColor) -})