npmci/test/test.js

83 lines
10 KiB
JavaScript
Raw Normal View History

2016-06-05 11:01:45 +00:00
"use strict";
require("typings-test");
require("should");
var path = require("path");
2016-06-05 11:50:45 +00:00
var beautylog = require("beautylog");
2016-06-05 11:01:45 +00:00
//set up environment
process.env.CI_BUILD_REPO = "https://yyyyyy:xxxxxxxx@gitlab.com/mygroup/myrepo.git";
2016-06-05 12:55:08 +00:00
process.env.NPMTS_TEST = "true";
2016-06-05 11:01:45 +00:00
process.cwd = function () {
return path.join(__dirname, "assets/");
};
var NpmciBuildDocker = require("../dist/npmci.build.docker");
2016-06-05 15:17:15 +00:00
var NpmciPublish = require("../dist/npmci.publish");
2016-06-05 14:56:07 +00:00
var NpmciTest = require("../dist/npmci.test");
2016-06-05 11:01:45 +00:00
var dockerfile1;
var dockerfile2;
var sortableArray;
describe("NPMCI", function () {
describe("build.docker", function () {
it("should return valid Dockerfiles", function () {
dockerfile1 = new NpmciBuildDocker.Dockerfile({ filePath: "./Dockerfile", read: true });
dockerfile2 = new NpmciBuildDocker.Dockerfile({ filePath: "./Dockerfile_sometag1", read: true });
dockerfile1.version.should.equal("latest");
dockerfile2.version.should.equal("sometag1");
});
it("should read a directory of Dockerfiles", function (done) {
NpmciBuildDocker.readDockerfiles()
.then(function (readDockerfilesArrayArg) {
readDockerfilesArrayArg[1].version.should.equal("sometag1");
sortableArray = readDockerfilesArrayArg;
done();
});
});
it("should sort an array of Dockerfiles", function (done) {
NpmciBuildDocker.sortDockerfiles(sortableArray)
.then(function (sortedArrayArg) {
2016-06-05 11:50:45 +00:00
beautylog.success("final result");
2016-06-05 11:01:45 +00:00
console.log(sortedArrayArg);
done();
});
});
2016-06-05 12:55:08 +00:00
it("should correctly chain Dockerfile handling", function (done) {
NpmciBuildDocker.build()
.then(function () {
done();
});
});
2016-06-05 11:01:45 +00:00
});
2016-06-05 15:17:15 +00:00
describe(".publish.docker", function () {
it("should publish all built Dockerfiles", function (done) {
NpmciPublish.publish("docker")
.then(function () {
done();
});
;
});
});
2016-06-05 14:56:07 +00:00
describe(".test.npm", function () {
2016-06-07 02:31:25 +00:00
it("should source nvm using bash and install a specific node version, then test it", function (done) {
2016-06-05 14:56:07 +00:00
NpmciTest.test("legacy")
.then(function () {
return NpmciTest.test("lts");
})
.then(function () {
return NpmciTest.test("stable");
})
.then(function () {
2016-06-07 02:31:25 +00:00
done();
});
});
});
describe("test.docker", function () {
it("should test dockerfiles", function (done) {
NpmciTest.test("docker")
2016-06-05 14:56:07 +00:00
.then(function () {
done();
});
});
});
2016-06-05 11:01:45 +00:00
});
2016-06-09 01:42:12 +00:00
//# sourceMappingURL=data:application/json;charset=utf8;base64,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QUFFLENBQUM7WUFDWCxDQUFDLENBQUMsQ0FBQztZQUFBLENBQUM7UUFDWixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ0gsUUFBUSxDQUFDLFdBQVcsRUFBQztRQUNqQixFQUFFLENBQUMsZ0ZBQWdGLEVBQUMsVUFBUyxJQUFJO1lBQzdGLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2lCQUNuQixJQUFJLENBQUM7Z0JBQ0YsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsQ0FBQyxDQUFDO2lCQUNELElBQUksQ0FBQztnQkFDRixNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNwQyxDQUFDLENBQUM7aUJBQ0QsSUFBSSxDQUFDO2dCQUNGLElBQUksRUFBRSxDQUFDO1lBQ1gsQ0FBQyxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUMsQ0FBQyxDQUFDO0lBQ0gsUUFBUSxDQUFDLGFBQWEsRUFBQztRQUNuQixFQUFFLENBQUMseUJBQXlCLEVBQUMsVUFBUyxJQUFJO1lBQ3RDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2lCQUNuQixJQUFJLENBQUM7Z0JBQ0YsSUFBSSxFQUFFLENBQUM7WUFDWCxDQUFDLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMsQ0FBQSIsImZpbGUiOiJ0ZXN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy10ZXN0XCI7XG5pbXBvcnQgXCJzaG91bGRcIjtcbmltcG9ydCBwYXRoID0gcmVxdWlyZShcInBhdGhcIik7XG5pbXBvcnQgKiBhcyBiZWF1dHlsb2cgZnJvbSBcImJlYXV0eWxvZ1wiXG4vL3NldCB1cCBlbnZpcm9ubWVudFxucHJvY2Vzcy5lbnYuQ0lfQlVJTERfUkVQTyA9IFwiaHR0cHM6Ly95eXl5eXk6eHh4eHh4eHhAZ2l0bGFiLmNvbS9teWdyb3VwL215cmVwby5naXRcIjtcbnByb2Nlc3MuZW52Lk5QTVRTX1RFU1QgPSBcInRydWVcIjtcbnByb2Nlc3MuY3dkID0gKCkgPT4ge1xuICAgIHJldHVybiBwYXRoLmpvaW4oX19kaXJuYW1lLFwiYXNzZXRzL1wiKTtcbn07XG5cbi8vcmVxdWlyZSBOUE1DSSBmaWxlc1xuaW1wb3J0IG5wbWNpID0gcmVxdWlyZShcIi4uL2Rpc3QvaW5kZXhcIik7XG5pbXBvcnQgTnBtY2lCdWlsZERvY2tlciA9IHJlcXVpcmUoXCIuLi9kaXN0L25wbWNpLmJ1aWxkLmRvY2tlclwiKTtcbmltcG9ydCBOcG1jaVB1Ymxpc2ggPSByZXF1aXJlKFwiLi4vZGlzdC9ucG1jaS5wdWJs