1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- // the fixtures have some weird stuff that is painful
- // to include directly in the repo for various reasons.
- //
- // So, unpack the fixtures with the system tar first.
- //
- // This means, of course, that it'll only work if you
- // already have a tar implementation, and some of them
- // will not properly unpack the fixtures anyway.
- //
- // But, since usually those tests will fail on Windows
- // and other systems with less capable filesystems anyway,
- // at least this way we don't cause inconveniences by
- // merely cloning the repo or installing the package.
- var tap = require("tap")
- , child_process = require("child_process")
- , rimraf = require("rimraf")
- , test = tap.test
- , path = require("path")
- test("clean fixtures", function (t) {
- rimraf(path.resolve(__dirname, "fixtures"), function (er) {
- t.ifError(er, "rimraf ./fixtures/")
- t.end()
- })
- })
- test("clean tmp", function (t) {
- rimraf(path.resolve(__dirname, "tmp"), function (er) {
- t.ifError(er, "rimraf ./tmp/")
- t.end()
- })
- })
- test("extract fixtures", function (t) {
- var c = child_process.spawn("tar"
- ,["xzvf", "fixtures.tgz"]
- ,{ cwd: __dirname })
- c.stdout.on("data", errwrite)
- c.stderr.on("data", errwrite)
- function errwrite (chunk) {
- process.stderr.write(chunk)
- }
- c.on("exit", function (code) {
- t.equal(code, 0, "extract fixtures should exit with 0")
- if (code) {
- t.comment("Note, all tests from here on out will fail because of this.")
- }
- t.end()
- })
- })
|