From 44eb633458ced98105ab039a0568f3f39b97776e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20B=C3=B6nnemann?= Date: Sun, 8 Feb 2015 16:29:27 +0100 Subject: [PATCH] test(setup): setup package.json --- tests/index.js | 1 + tests/scenarios/setup.js | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 tests/scenarios/setup.js diff --git a/tests/index.js b/tests/index.js index ca7b60a2..b5ea3638 100644 --- a/tests/index.js +++ b/tests/index.js @@ -9,3 +9,4 @@ require('./scenarios/prepublish')(test, createModule) require('./scenarios/postpublish')(test, createModule) require('./scenarios/publish')(test, createModule) require('./scenarios/verify')(test, createModule) +require('./scenarios/setup')(test, createModule) diff --git a/tests/scenarios/setup.js b/tests/scenarios/setup.js new file mode 100644 index 00000000..1717174f --- /dev/null +++ b/tests/scenarios/setup.js @@ -0,0 +1,38 @@ +'use strict' + +var join = require('path').join +var readFile = require('fs').readFileSync + +var efh = require('error-first-handler') +var nixt = require('nixt') + +module.exports = function (test, createModule) { + createModule({ + repository: {}, + scripts: { + postpublish: 'npm run gh-pages' + } + }, efh()(function (name, cwd) { + test('setup', function (t) { + t.test('setup "package.json"', function (t) { + t.plan(5) + + nixt() + .cwd(cwd) + .exec('git remote add origin git@github.com:user/repo.git') + .run('./node_modules/.bin/semantic-release setup') + .code(0) + .end(function(err) { + t.error(err, 'nixt') + + var pkg = JSON.parse(readFile(join(cwd, 'package.json'))) + + t.is(pkg.version, '0.0.0-semantically-released', 'version') + t.is(pkg.repository.url, 'https://github.com/user/repo', 'repo') + t.is(pkg.scripts.prepublish, 'semantic-release pre', 'pre') + t.is(pkg.scripts.postpublish, 'npm run gh-pages && semantic-release post', 'post') + }) + }) + }) + })) +}