• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict'
2var test = require('tap').test
3var Tacks = require('tacks')
4var File = Tacks.File
5var Dir = Tacks.Dir
6var common = require('../common-tap.js')
7
8var testdir = common.pkg
9
10var fixture = new Tacks(Dir({
11  'package.json': File(
12    '{\n' +
13      "'name': 'some-name',\n" +
14      "'dependencies': {}\n" +
15    '}'
16  ),
17  'node_modules': Dir()
18}))
19
20function setup () {
21  fixture.create(testdir)
22}
23
24function cleanup () {
25  fixture.remove(testdir)
26}
27
28test('setup', function (t) {
29  cleanup()
30  setup()
31  t.end()
32})
33
34test('failing to parse package.json should be error', function (t) {
35  common.npm(
36    ['install'],
37    {cwd: testdir},
38    function (err, code, stdout, stderr) {
39      if (err) throw err
40      t.equal(code, 1, 'exit not ok')
41      t.similar(stderr, /npm ERR! JSON.parse Failed to parse json/)
42      t.end()
43    }
44  )
45})
46
47test('cleanup', function (t) {
48  cleanup()
49  t.end()
50})
51