| 
									
										
										
										
											2016-06-05 13:01:45 +02:00
										 |  |  | "use strict"; | 
					
						
							|  |  |  | require("typings-test"); | 
					
						
							|  |  |  | require("should"); | 
					
						
							|  |  |  | var path = require("path"); | 
					
						
							| 
									
										
										
										
											2016-06-05 13:50:45 +02:00
										 |  |  | var beautylog = require("beautylog"); | 
					
						
							| 
									
										
										
										
											2016-06-05 13:01:45 +02:00
										 |  |  | //set up environment
 | 
					
						
							|  |  |  | process.env.CI_BUILD_REPO = "https://yyyyyy:xxxxxxxx@gitlab.com/mygroup/myrepo.git"; | 
					
						
							| 
									
										
										
										
											2016-06-26 02:17:17 +02:00
										 |  |  | process.env.NPMCI_SSHKEY_1 = "hostString|somePrivKey|##"; | 
					
						
							| 
									
										
										
										
											2016-06-05 14:55:08 +02:00
										 |  |  | process.env.NPMTS_TEST = "true"; | 
					
						
							| 
									
										
										
										
											2016-06-05 13:01:45 +02:00
										 |  |  | process.cwd = function () { | 
					
						
							|  |  |  |     return path.join(__dirname, "assets/"); | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | var NpmciBuildDocker = require("../dist/npmci.build.docker"); | 
					
						
							| 
									
										
										
										
											2016-06-05 17:17:15 +02:00
										 |  |  | var NpmciPublish = require("../dist/npmci.publish"); | 
					
						
							| 
									
										
										
										
											2016-06-05 16:56:07 +02:00
										 |  |  | var NpmciTest = require("../dist/npmci.test"); | 
					
						
							| 
									
										
										
										
											2016-06-26 02:17:17 +02:00
										 |  |  | var NpmciSsh = require("../dist/npmci.ssh"); | 
					
						
							| 
									
										
										
										
											2016-06-05 13:01:45 +02: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 13:50:45 +02:00
										 |  |  |                 beautylog.success("final result"); | 
					
						
							| 
									
										
										
										
											2016-06-05 13:01:45 +02:00
										 |  |  |                 console.log(sortedArrayArg); | 
					
						
							|  |  |  |                 done(); | 
					
						
							|  |  |  |             }); | 
					
						
							|  |  |  |         }); | 
					
						
							| 
									
										
										
										
											2016-06-05 14:55:08 +02:00
										 |  |  |         it("should correctly chain Dockerfile handling", function (done) { | 
					
						
							|  |  |  |             NpmciBuildDocker.build() | 
					
						
							|  |  |  |                 .then(function () { | 
					
						
							|  |  |  |                 done(); | 
					
						
							|  |  |  |             }); | 
					
						
							|  |  |  |         }); | 
					
						
							| 
									
										
										
										
											2016-06-05 13:01:45 +02:00
										 |  |  |     }); | 
					
						
							| 
									
										
										
										
											2016-06-05 17:17:15 +02:00
										 |  |  |     describe(".publish.docker", function () { | 
					
						
							|  |  |  |         it("should publish all built Dockerfiles", function (done) { | 
					
						
							|  |  |  |             NpmciPublish.publish("docker") | 
					
						
							|  |  |  |                 .then(function () { | 
					
						
							|  |  |  |                 done(); | 
					
						
							|  |  |  |             }); | 
					
						
							|  |  |  |             ; | 
					
						
							|  |  |  |         }); | 
					
						
							|  |  |  |     }); | 
					
						
							| 
									
										
										
										
											2016-06-05 16:56:07 +02:00
										 |  |  |     describe(".test.npm", function () { | 
					
						
							| 
									
										
										
										
											2016-06-07 04:31:25 +02:00
										 |  |  |         it("should source nvm using bash and install a specific node version, then test it", function (done) { | 
					
						
							| 
									
										
										
										
											2016-06-05 16:56:07 +02:00
										 |  |  |             NpmciTest.test("legacy") | 
					
						
							|  |  |  |                 .then(function () { | 
					
						
							|  |  |  |                 return NpmciTest.test("lts"); | 
					
						
							|  |  |  |             }) | 
					
						
							|  |  |  |                 .then(function () { | 
					
						
							|  |  |  |                 return NpmciTest.test("stable"); | 
					
						
							|  |  |  |             }) | 
					
						
							|  |  |  |                 .then(function () { | 
					
						
							| 
									
										
										
										
											2016-06-07 04:31:25 +02:00
										 |  |  |                 done(); | 
					
						
							|  |  |  |             }); | 
					
						
							|  |  |  |         }); | 
					
						
							|  |  |  |     }); | 
					
						
							|  |  |  |     describe("test.docker", function () { | 
					
						
							|  |  |  |         it("should test dockerfiles", function (done) { | 
					
						
							|  |  |  |             NpmciTest.test("docker") | 
					
						
							| 
									
										
										
										
											2016-06-05 16:56:07 +02:00
										 |  |  |                 .then(function () { | 
					
						
							|  |  |  |                 done(); | 
					
						
							|  |  |  |             }); | 
					
						
							|  |  |  |         }); | 
					
						
							|  |  |  |     }); | 
					
						
							| 
									
										
										
										
											2016-06-26 02:17:17 +02:00
										 |  |  |     describe("npmci prepare ssh", function () { | 
					
						
							|  |  |  |         it("should pick up SSH keys", function (done) { | 
					
						
							|  |  |  |             NpmciSsh.ssh() | 
					
						
							|  |  |  |                 .then(function () { | 
					
						
							|  |  |  |                 done(); | 
					
						
							|  |  |  |             }); | 
					
						
							|  |  |  |         }); | 
					
						
							|  |  |  |     }); | 
					
						
							| 
									
										
										
										
											2016-06-05 13:01:45 +02:00
										 |  |  | }); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-06-26 02:17:17 +02:00
										 |  |  | //# sourceMappingURL=data:application/json;charset=utf8;base64,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Q0FBc0MsRUFBQyxVQUFTLElBQUk7WUFDbkQsWUFBWSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7aUJBQ3pCLElBQUksQ0FBQztnQkFDRixJQUFJLEVBQUUsQ0FBQztZQUNYLENBQUMsQ0FBQyxDQUFDO1lBQUEsQ0FBQztRQUNaLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDSCxRQUFRLENBQUMsV0FBVyxFQUFDO1FBQ2pCLEVBQUUsQ0FBQyxnRkFBZ0YsRUFBQyxVQUFTLElBQUk7WUFDN0YsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7aUJBQ25CLElBQUksQ0FBQztnQkFDRixNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqQyxDQUFDLENBQUM7aUJBQ0QsSUFBSSxDQUFDO2dCQUNGLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3BDLENBQUMsQ0FBQztpQkFDRCxJQUFJLENBQUM7Z0JBQ0YsSUFBSSxFQUFFLENBQUM7WUFDWCxDQUFDLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFDLENBQUM7SUFDSCxRQUFRLENBQUMsYUFBYSxFQUFDO1FBQ25CLEVBQUUsQ0FBQyx5QkFBeUIsRUFBQyxVQUFTLElBQUk7WUFDdEMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7aUJBQ25CLElBQUksQ0FBQztnQkFDRixJQUFJLEVBQUUsQ0FBQztZQUNYLENBQUMsQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDLENBQUMsQ0FBQztJQUNILFFBQVEsQ0FBQyxtQkFBbUIsRUFBQztRQUN6QixFQUFFLENBQUMseUJBQXlCLEVBQUMsVUFBUyxJQUFJO1lBQ3RDLFFBQVEsQ0FBQyxHQUFHLEVBQUU7aUJBQ1QsSUFBSSxDQUFDO2dCQUNGLElBQUksRUFBRSxDQUFDO1lBQ1gsQ0FBQyxDQUFDLENBQUE7UUFDVixDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUMsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFDLENBQUEiLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInR5cGluZ3MtdGVzdFwiO1xuaW1wb3J0IFwic2hvdWxkXCI7XG5pbXBvcnQgcGF0aCA9IHJlcXVpcmUoXCJwYXRoXCIpO1xuaW1wb3J0ICogYXMgYmVhdXR5bG9nIGZyb20gXCJiZWF1dHlsb2dcIlxuLy9zZXQgdXAgZW52aXJvbm1lbnRcbnByb2Nlc3MuZW52LkNJX0JVSUxEX1JFUE8gPSBcImh0dHBzOi8veXl5eXl5Onh4eHh4eHh4QGdpdGxhYi5jb20vbXlncm91cC9teXJlcG8uZ2l0XCI7XG5wcm9jZXNzLmVudi5OUE1DSV9TU0hL
 |