Skip to content

Commit

Permalink
improve file structure
Browse files Browse the repository at this point in the history
  • Loading branch information
sindresorhus committed Feb 16, 2015
1 parent 178b212 commit f5f3247
Show file tree
Hide file tree
Showing 5 changed files with 33 additions and 34 deletions.
3 changes: 1 addition & 2 deletions bin/critical → cli.js 100755 → 100644
Expand Up @@ -7,11 +7,10 @@ var objectAssign = require('object-assign');
var indentString = require('indent-string');
var stdin = require('get-stdin');
var _ = require('lodash');
var critical = require('../src/critical');
var critical = require('./');
var ok;

var cli = meow({
pkg: '../package.json',
help: [
'Usage: critical <input> [<option>]',
'',
Expand Down
2 changes: 1 addition & 1 deletion src/critical.js → index.js
Expand Up @@ -12,7 +12,7 @@ var sourceInliner = require('inline-critical');
var imageInliner = require('imageinliner');
var Promise = require('bluebird');
var tempfile = require('tempfile');
var inliner = require('./helper/inline-styles');
var inliner = require('./lib/inline-styles');


// promisify fs and penthouse
Expand Down
File renamed without changes.
9 changes: 4 additions & 5 deletions package.json
Expand Up @@ -9,15 +9,14 @@
"test": "mocha test/test.js --timeout 100000"
},
"files": [
"bin/critical",
"src/critical.js",
"src/helper/inline-styles.js"
"cli.js",
"index.js",
"lib"
],
"bin": {
"critical": "./bin/critical"
"critical": "cli.js"
},
"preferGlobal": true,
"main": "src/critical.js",
"keywords": [
"critical",
"path",
Expand Down
53 changes: 27 additions & 26 deletions test/test.js
Expand Up @@ -10,7 +10,7 @@ var assert = require('assert');
var execFile = require('child_process').execFile;
var async = require('async');
var mockery = require('mockery');
var critical = require('../src/critical');
var critical = require('../');
var pkg = require('../package.json');

process.setMaxListeners(0);
Expand Down Expand Up @@ -215,6 +215,7 @@ describe('Module', function () {
} else {
assert.strictEqual(stripWhitespace(output), stripWhitespace(expected));
}

done();
});
});
Expand All @@ -234,6 +235,7 @@ describe('Module', function () {
} else {
assert.strictEqual(stripWhitespace(output), stripWhitespace(expected));
}

done();
});
});
Expand Down Expand Up @@ -360,7 +362,6 @@ describe('Module', function () {
});
});

// binary
describe('CLI', function () {
describe('acceptance', function () {
it('should return the version', function (done) {
Expand Down Expand Up @@ -401,7 +402,7 @@ describe('CLI', function () {
useCleanCache: true
});

mockery.registerMock('../src/critical', {
mockery.registerMock('../', {
generate: function (opts) {
this.mockOpts = opts;
this.method = 'generate';
Expand Down Expand Up @@ -434,15 +435,15 @@ describe('CLI', function () {
'-e', 'extract'
];

require('../bin/critical');
require('../cli');

assert.strictEqual(this.mockOpts.width,300);
assert.strictEqual(this.mockOpts.height,400);
assert.strictEqual(this.mockOpts.css,'css');
assert.strictEqual(this.mockOpts.htmlTarget,'htmlTarget');
assert.strictEqual(this.mockOpts.styleTarget,'styleTarget');
assert.strictEqual(this.mockOpts.minify,'minify');
assert.strictEqual(this.mockOpts.extract,'extract');
assert.strictEqual(this.mockOpts.width, 300);
assert.strictEqual(this.mockOpts.height, 400);
assert.strictEqual(this.mockOpts.css, 'css');
assert.strictEqual(this.mockOpts.htmlTarget, 'htmlTarget');
assert.strictEqual(this.mockOpts.styleTarget, 'styleTarget');
assert.strictEqual(this.mockOpts.minify, 'minify');
assert.strictEqual(this.mockOpts.extract, 'extract');
});

it('should pass the correct opts when using long opts', function () {
Expand All @@ -459,15 +460,15 @@ describe('CLI', function () {
'--extract', 'extract'
];

require('../bin/critical');
require('../cli');

assert.strictEqual(this.mockOpts.width,300);
assert.strictEqual(this.mockOpts.height,400);
assert.strictEqual(this.mockOpts.css,'css');
assert.strictEqual(this.mockOpts.htmlTarget,'htmlTarget');
assert.strictEqual(this.mockOpts.styleTarget,'styleTarget');
assert.strictEqual(this.mockOpts.minify,'minify');
assert.strictEqual(this.mockOpts.extract,'extract');
assert.strictEqual(this.mockOpts.width, 300);
assert.strictEqual(this.mockOpts.height, 400);
assert.strictEqual(this.mockOpts.css, 'css');
assert.strictEqual(this.mockOpts.htmlTarget, 'htmlTarget');
assert.strictEqual(this.mockOpts.styleTarget, 'styleTarget');
assert.strictEqual(this.mockOpts.minify, 'minify');
assert.strictEqual(this.mockOpts.extract, 'extract');
});

it('should use "generateInline" when passing htmltarget', function () {
Expand All @@ -478,9 +479,9 @@ describe('CLI', function () {
'--htmlTarget', 'htmlTarget'
];

require('../bin/critical');
require('../cli');

assert.strictEqual(this.method,'generateInline');
assert.strictEqual(this.method, 'generateInline');
});

it('should use "generate" when not passing htmltarget', function () {
Expand All @@ -490,9 +491,9 @@ describe('CLI', function () {
'fixture/index.html'
];

require('../bin/critical');
require('../cli');

assert.strictEqual(this.method,'generate');
assert.strictEqual(this.method, 'generate');
});

it('should rewrite "styleTarget" to "dest" when using "generate"', function () {
Expand All @@ -503,10 +504,10 @@ describe('CLI', function () {
'--styleTarget', 'styleTarget'
];

require('../bin/critical');
require('../cli');

assert.strictEqual(this.method,'generate');
assert.strictEqual(this.mockOpts.dest,'styleTarget');
assert.strictEqual(this.method, 'generate');
assert.strictEqual(this.mockOpts.dest, 'styleTarget');
});
});
});

0 comments on commit f5f3247

Please sign in to comment.