Skip to content

Commit

Permalink
handle CI with no color support
Browse files Browse the repository at this point in the history
  • Loading branch information
Kelly Selden committed Aug 13, 2015
1 parent ca65912 commit 513a124
Show file tree
Hide file tree
Showing 14 changed files with 229 additions and 143 deletions.
2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,9 @@
"multiline": "^1.0.2",
"nock": "^1.2.1",
"node-require-timings": "1.0.0",
"strip-ansi": "^2.0.0",
"supertest": "0.15.0",
"supports-color": "^3.0.0",
"tmp-sync": "^1.0.1",
"yuidocjs": "0.6.0"
}
Expand Down
23 changes: 13 additions & 10 deletions tests/acceptance/help/help-addon-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,16 @@

'use strict';

var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var processHelpString = require('../../helpers/process-help-string');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var tmpdir;

describe('Acceptance: ember help addon', function() {
Expand All @@ -31,7 +32,7 @@ describe('Acceptance: ember help addon', function() {
]).then(function(result) {
var output = result.ui.output;

expect(output).to.include(EOL + '\
var testString = processHelpString(EOL + '\
ember addon \u001b[33m<addon-name>\u001b[39m\u001b[36m <options...>\u001b[39m' + EOL + '\
Generates a new folder structure for building an addon, complete with test harness.' + EOL + '\
\u001b[36m --dry-run\u001b[39m\u001b[36m (Boolean)\u001b[39m\u001b[36m (Default: false)\u001b[39m\u001b[90m' + EOL + '\
Expand All @@ -46,6 +47,8 @@ ember addon \u001b[33m<addon-name>\u001b[39m\u001b[36m <options...>\u001b[39m' +
aliases: -sb\u001b[39m' + EOL + '\
\u001b[36m --skip-git\u001b[39m\u001b[36m (Boolean)\u001b[39m\u001b[36m (Default: false)\u001b[39m\u001b[90m' + EOL + '\
aliases: -sg\u001b[39m' + EOL);

expect(output).to.include(testString);
});
});
});
27 changes: 16 additions & 11 deletions tests/acceptance/help/help-build-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,16 @@

'use strict';

var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var processHelpString = require('../../helpers/process-help-string');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var tmpdir;

describe('Acceptance: ember help build', function() {
Expand All @@ -32,7 +33,7 @@ describe('Acceptance: ember help build', function() {
.then(function(result) {
var output = result.ui.output;

expect(output).to.include(EOL + '\
var testString = processHelpString(EOL + '\
ember build\u001b[36m <options...>\u001b[39m' + EOL + '\
Builds your app and places it into the output path (dist/ by default).' + EOL + '\
\u001b[90m aliases: b' + EOL + '\
Expand All @@ -43,6 +44,8 @@ ember build\u001b[36m <options...>\u001b[39m' + EOL + '\
\u001b[36m --watch\u001b[39m\u001b[36m (Boolean)\u001b[39m\u001b[36m (Default: false)\u001b[39m\u001b[90m' + EOL + '\
aliases: -w\u001b[39m' + EOL + '\
\u001b[36m --watcher\u001b[39m\u001b[36m (String)\u001b[39m' + EOL);

expect(output).to.include(testString);
});
});

Expand All @@ -54,7 +57,9 @@ ember build\u001b[36m <options...>\u001b[39m' + EOL + '\
.then(function(result) {
var output = result.ui.output;

expect(output).to.include('ember build\u001b[36m <options...>\u001b[39m');
var testString = processHelpString('ember build\u001b[36m <options...>\u001b[39m');

expect(output).to.include(testString);
});
});
});
27 changes: 16 additions & 11 deletions tests/acceptance/help/help-destroy-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,16 @@

'use strict';

var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var processHelpString = require('../../helpers/process-help-string');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var tmpdir;

describe('Acceptance: ember help destroy', function() {
Expand All @@ -32,7 +33,7 @@ describe('Acceptance: ember help destroy', function() {
.then(function(result) {
var output = result.ui.output;

expect(output).to.include(EOL + '\
var testString = processHelpString(EOL + '\
ember destroy \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m' + EOL + '\
Destroys code generated by `generate` command.' + EOL + '\
\u001b[90m aliases: d' + EOL + '\
Expand All @@ -47,6 +48,8 @@ ember destroy \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m'
' + EOL + '\
' + EOL + '\
Run `ember help generate` to view a list of available blueprints.' + EOL);

expect(output).to.include(testString);
});
});

Expand All @@ -58,7 +61,9 @@ ember destroy \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m'
.then(function(result) {
var output = result.ui.output;

expect(output).to.include('ember destroy \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m');
var testString = processHelpString('ember destroy \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m');

expect(output).to.include(testString);
});
});
});
46 changes: 28 additions & 18 deletions tests/acceptance/help/help-generate-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,16 @@

'use strict';

var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var processHelpString = require('../../helpers/process-help-string');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var tmpdir;

describe('Acceptance: ember help generate', function() {
Expand All @@ -32,7 +33,7 @@ describe('Acceptance: ember help generate', function() {
.then(function(result) {
var output = result.ui.output;

expect(output).to.include(EOL + '\
var testString = processHelpString(EOL + '\
ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m' + EOL + '\
Generates new code from blueprints.' + EOL + '\
\u001b[90m aliases: g' + EOL + '\
Expand All @@ -46,6 +47,8 @@ ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m'
aliases: -dum, -id\u001b[39m' + EOL + '\
\u001b[36m --in-repo-addon\u001b[39m\u001b[36m (String)\u001b[39m\u001b[36m (Default: null)\u001b[39m\u001b[90m' + EOL + '\
aliases: -in-repo <value>, -ir <value>\u001b[39m' + EOL);

expect(output).to.include(testString);
});
});

Expand All @@ -57,7 +60,9 @@ ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m'
.then(function(result) {
var output = result.ui.output;

expect(output).to.include('ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m');
var testString = processHelpString('ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m');

expect(output).to.include(testString);
});
});

Expand Down Expand Up @@ -142,9 +147,9 @@ ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m'
var output = result.ui.output;

expect(output).to.include(' my-app:');
expect(output).to.include(' component \u001b[33m<name>\u001b[39m');
expect(output).to.include(processHelpString(' component \u001b[33m<name>\u001b[39m'));
expect(output).to.include(' ember-cli:');
expect(output).to.include(' \u001b[90m(overridden) \u001b[39m\u001b[90mcomponent\u001b[39m');
expect(output).to.include(processHelpString(' \u001b[90m(overridden) \u001b[39m\u001b[90mcomponent\u001b[39m'));
});
});

Expand All @@ -157,7 +162,9 @@ ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m'
.then(function(result) {
var output = result.ui.output;

expect(output).to.include('The \'asdf\' blueprint does not exist in this project.');
var testString = processHelpString('The \'asdf\' blueprint does not exist in this project.');

expect(output).to.include(testString);
});
});

Expand All @@ -170,9 +177,11 @@ ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m'
.then(function(result) {
var output = result.ui.output;

expect(output).to.include(EOL + '\
var testString = processHelpString(EOL + '\
model \u001b[33m<name>\u001b[39m \u001b[33m<attr:type>\u001b[39m' + EOL + '\
\u001b[90mGenerates an ember-data model.\u001b[39m' + EOL);

expect(output).to.include(testString);
});
});

Expand All @@ -185,8 +194,7 @@ ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m'
.then(function(result) {
var output = result.ui.output;

expect(output).to.include(EOL + '\
\u001b[0m\u001b[90mYou may generate models with as many attrs as you would like to pass. The following attribute types are supported:\u001b[39m\n\
var testString = processHelpString('\u001b[90mYou may generate models with as many attrs as you would like to pass. The following attribute types are supported:\u001b[39m\n\
\u001b[33m<attr-name>\u001b[39m\n\
\u001b[33m<attr-name>\u001b[39m:array\n\
\u001b[33m<attr-name>\u001b[39m:boolean\n\
Expand All @@ -195,7 +203,9 @@ ember generate \u001b[33m<blueprint>\u001b[39m\u001b[36m <options...>\u001b[39m'
\u001b[33m<attr-name>\u001b[39m:number\n\
\u001b[33m<attr-name>\u001b[39m:string\n\
\u001b[33m<attr-name>\u001b[39m:belongs-to:\u001b[33m<model-name>\u001b[39m\n\
\u001b[33m<attr-name>\u001b[39m:has-many:\u001b[33m<model-name>\u001b[39m\u001b[0m\n');
\u001b[33m<attr-name>\u001b[39m:has-many:\u001b[33m<model-name>\u001b[39m');

expect(output).to.include(testString);
});
});
});
35 changes: 22 additions & 13 deletions tests/acceptance/help/help-help-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,16 @@

'use strict';

var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var path = require('path');
var tmp = require('tmp-sync');
var expect = require('chai').expect;
var EOL = require('os').EOL;
var ember = require('../../helpers/ember');
var processHelpString = require('../../helpers/process-help-string');
var Promise = require('../../../lib/ext/promise');
var remove = Promise.denodeify(require('fs-extra').remove);
var root = process.cwd();
var tmproot = path.join(root, 'tmp');
var tmpdir;

describe('Acceptance: ember help help', function() {
Expand All @@ -32,12 +33,14 @@ describe('Acceptance: ember help help', function() {
.then(function(result) {
var output = result.ui.output;

expect(output).to.include(EOL + '\
var testString = processHelpString(EOL + '\
ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options...>\u001b[39m' + EOL + '\
Outputs the usage instructions for all commands or the provided command' + EOL + '\
\u001b[90m aliases: h, --help, -h' + EOL + '\
\u001b[39m\u001b[36m --verbose\u001b[39m\u001b[36m (Boolean)\u001b[39m\u001b[36m (Default: false)\u001b[39m\u001b[90m' + EOL + '\
aliases: -v\u001b[39m' + EOL);

expect(output).to.include(testString);
});
});

Expand All @@ -49,7 +52,9 @@ ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options.
.then(function(result) {
var output = result.ui.output;

expect(output).to.include('ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options...>\u001b[39m');
var testString = processHelpString('ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options...>\u001b[39m');

expect(output).to.include(testString);
});
});

Expand All @@ -61,7 +66,9 @@ ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options.
.then(function(result) {
var output = result.ui.output;

expect(output).to.include('ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options...>\u001b[39m');
var testString = processHelpString('ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options...>\u001b[39m');

expect(output).to.include(testString);
});
});

Expand All @@ -73,7 +80,9 @@ ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options.
.then(function(result) {
var output = result.ui.output;

expect(output).to.include('ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options...>\u001b[39m');
var testString = processHelpString('ember help \u001b[33m<command-name (Default: all)>\u001b[39m\u001b[36m <options...>\u001b[39m');

expect(output).to.include(testString);
});
});
});

0 comments on commit 513a124

Please sign in to comment.