1
0
Fork 0

add basic integration tests

This commit is contained in:
Travis Fischer 2018-03-09 18:45:50 -05:00 committed by Joost De Cock
parent f67003ccfc
commit 7ddd168b3a
8 changed files with 3093 additions and 75 deletions

View file

@ -0,0 +1,57 @@
'use strict'
const { test } = require('ava')
const execa = require('execa')
const rmfr = require('rmfr')
const createLibrary = require('./create-library')
const tests = [
{
name: 'my-test-library',
author: 'nala',
description: 'this is a auto-generated test module. please ignore.',
repo: 'nala/my-test-library',
license: 'MIT',
manager: 'yarn'
},
{
name: 'my-test-library',
author: 'nala',
description: 'this is a auto-generated test module. please ignore.',
repo: 'nala/my-test-library',
license: 'MIT',
manager: 'npm'
},
{
name: '@automagical/nala',
author: 'superstar-cats',
description: 'this is a auto-generated test module. please ignore.',
repo: 'superstar-cats/nala',
license: 'GPL',
manager: 'yarn'
}
]
tests.forEach((info) => {
test.serial(`creating "${info.name}" using ${info.manager}`, async (t) => {
console.log(`creating "${info.name}" using ${info.manager}...`)
// ensure library is created successfully
const root = await createLibrary(info)
t.truthy(root.indexOf(info.shortName) >= 0)
// ensure yarn runs successfully
let ret = await execa.shell('yarn', { cwd: root })
t.is(ret.code, 0)
// ensure jest tests pass
ret = await execa.shell('yarn test', { cwd: root })
t.is(ret.code, 0)
// ensure git is initialized properly
ret = await execa.shell('git status', { cwd: root })
t.is(ret.code, 0)
await rmfr(root)
})
})