added CI tests
This commit is contained in:
		
							
								
								
									
										4
									
								
								dist/smartgit.add.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								dist/smartgit.add.d.ts
									
									
									
									
										vendored
									
									
								
							| @@ -1 +1,3 @@ | ||||
| export declare let add: (dirPathArg: string) => any; | ||||
| export declare let add: { | ||||
|     addAll: (dirPathArg: string) => any; | ||||
| }; | ||||
|   | ||||
							
								
								
									
										11
									
								
								dist/smartgit.add.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								dist/smartgit.add.js
									
									
									
									
										vendored
									
									
								
							| @@ -1,17 +1,20 @@ | ||||
| "use strict"; | ||||
| var plugins = require("./smartgit.plugins"); | ||||
| var helpers = require("./smartgit.helpers"); | ||||
| exports.add = function (dirPathArg) { | ||||
| var addAll = function (dirPathArg) { | ||||
|     var done = plugins.Q.defer(); | ||||
|     if (!helpers.isGitDirectory(dirPathArg)) { | ||||
|         plugins.beautylog.error("smartgit.add expects a valif git directory!"); | ||||
|         plugins.beautylog.error("smartgit.add expects a valid git directory!"); | ||||
|         done.reject(); | ||||
|         return done.promise; | ||||
|     } | ||||
|     ; | ||||
|     // if everything is ok proceed | ||||
|     plugins.shelljs.exec(""); | ||||
|     plugins.shelljs.exec("(cd " + dirPathArg + " && git add -A && git status)"); | ||||
|     done.resolve(dirPathArg); | ||||
|     return done.promise; | ||||
| }; | ||||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRnaXQuYWRkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvc21hcnRnaXQuYWRkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxJQUFZLE9BQU8sV0FBTSxvQkFBb0IsQ0FBQyxDQUFBO0FBQzlDLElBQVksT0FBTyxXQUFNLG9CQUFvQixDQUFDLENBQUE7QUFFbkMsV0FBRyxHQUFHLFVBQUMsVUFBaUI7SUFDL0IsSUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM3QixFQUFFLENBQUEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQSxDQUFDO1FBQ3BDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2QsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUFBLENBQUM7SUFDRiw4QkFBOEI7SUFDOUIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN6QixNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztBQUN4QixDQUFDLENBQUMifQ== | ||||
| exports.add = { | ||||
|     addAll: addAll | ||||
| }; | ||||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRnaXQuYWRkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvc21hcnRnaXQuYWRkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxJQUFZLE9BQU8sV0FBTSxvQkFBb0IsQ0FBQyxDQUFBO0FBQzlDLElBQVksT0FBTyxXQUFNLG9CQUFvQixDQUFDLENBQUE7QUFFOUMsSUFBSSxNQUFNLEdBQUcsVUFBQyxVQUFpQjtJQUMzQixJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzdCLEVBQUUsQ0FBQSxDQUFDLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBLENBQUM7UUFDcEMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBQUEsQ0FBQztJQUNGLDhCQUE4QjtJQUM5QixPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFPLFVBQVUsa0NBQStCLENBQUMsQ0FBQztJQUN2RSxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0FBQ3hCLENBQUMsQ0FBQztBQUVTLFdBQUcsR0FBRztJQUNiLE1BQU0sRUFBRSxNQUFNO0NBQ2pCLENBQUEifQ== | ||||
							
								
								
									
										4
									
								
								dist/smartgit.commit.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								dist/smartgit.commit.js
									
									
									
									
										vendored
									
									
								
							| @@ -10,8 +10,8 @@ exports.commit = function (dirPathArg, commitMessage) { | ||||
|     } | ||||
|     ; | ||||
|     // if everything is all right proceed | ||||
|     plugins.shelljs.exec("git commit -m \"" + commitMessage + "\""); | ||||
|     plugins.shelljs.exec("(cd " + dirPathArg + " && git commit -m \"" + commitMessage + "\")"); | ||||
|     done.resolve(); | ||||
|     return done.promise; | ||||
| }; | ||||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRnaXQuY29tbWl0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvc21hcnRnaXQuY29tbWl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxJQUFZLE9BQU8sV0FBTSxvQkFBb0IsQ0FBQyxDQUFBO0FBQzlDLElBQVksT0FBTyxXQUFNLG9CQUFvQixDQUFDLENBQUE7QUFFbkMsY0FBTSxHQUFHLFVBQUMsVUFBaUIsRUFBQyxhQUFvQjtJQUN2RCxJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzdCLEVBQUUsQ0FBQSxDQUFDLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBLENBQUM7UUFDcEMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBQUEsQ0FBQztJQUNGLHFDQUFxQztJQUNyQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBa0IsYUFBYSxPQUFHLENBQUMsQ0FBQztJQUN6RCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDZixNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztBQUN4QixDQUFDLENBQUMifQ== | ||||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRnaXQuY29tbWl0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvc21hcnRnaXQuY29tbWl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxJQUFZLE9BQU8sV0FBTSxvQkFBb0IsQ0FBQyxDQUFBO0FBQzlDLElBQVksT0FBTyxXQUFNLG9CQUFvQixDQUFDLENBQUE7QUFFbkMsY0FBTSxHQUFHLFVBQUMsVUFBaUIsRUFBQyxhQUFvQjtJQUN2RCxJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzdCLEVBQUUsQ0FBQSxDQUFDLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBLENBQUM7UUFDcEMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBQUEsQ0FBQztJQUNGLHFDQUFxQztJQUNyQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFPLFVBQVUsNEJBQXNCLGFBQWEsUUFBSSxDQUFDLENBQUM7SUFDL0UsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7QUFDeEIsQ0FBQyxDQUFDIn0= | ||||
							
								
								
									
										9
									
								
								dist/smartgit.helpers.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								dist/smartgit.helpers.js
									
									
									
									
										vendored
									
									
								
							| @@ -1,6 +1,11 @@ | ||||
| "use strict"; | ||||
| var plugins = require("./smartgit.plugins"); | ||||
| exports.isGitDirectory = function (dirPathArg) { | ||||
|     return plugins.smartfile.fs.isDirectory(plugins.path.join(dirPathArg, ".git")); | ||||
|     try { | ||||
|         return plugins.smartfile.fs.isDirectory(plugins.path.join(dirPathArg, ".git")); | ||||
|     } | ||||
|     catch (err) { | ||||
|         return false; | ||||
|     } | ||||
| }; | ||||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRnaXQuaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3NtYXJ0Z2l0LmhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLElBQVksT0FBTyxXQUFNLG9CQUFvQixDQUFDLENBQUE7QUFFbkMsc0JBQWMsR0FBRyxVQUFDLFVBQVU7SUFDbkMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FDbkMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLE1BQU0sQ0FBQyxDQUN2QyxDQUFDO0FBQ04sQ0FBQyxDQUFBIn0= | ||||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRnaXQuaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3NtYXJ0Z2l0LmhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLElBQVksT0FBTyxXQUFNLG9CQUFvQixDQUFDLENBQUE7QUFFbkMsc0JBQWMsR0FBRyxVQUFDLFVBQVU7SUFDbkMsSUFBSSxDQUFDO1FBQ0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FDbkMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLE1BQU0sQ0FBQyxDQUN2QyxDQUFDO0lBQ04sQ0FDQTtJQUFBLEtBQUssQ0FBQSxDQUFDLEdBQUcsQ0FBQyxDQUFBLENBQUM7UUFDUCxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQ2pCLENBQUM7QUFDTCxDQUFDLENBQUEifQ== | ||||
| @@ -5,7 +5,7 @@ | ||||
|   "main": "dist/index.js", | ||||
|   "typings": "dist/index.d.ts", | ||||
|   "scripts": { | ||||
|     "cleanTest": "rm -rf test/temp && rm -rf test/temp2", | ||||
|     "cleanTest": "rm -rf test/temp*", | ||||
|     "test": "(npm run cleanTest && npmts)", | ||||
|     "install": "node dist/postinstall.js" | ||||
|   }, | ||||
|   | ||||
							
								
								
									
										44
									
								
								test/test.js
									
									
									
									
									
								
							
							
						
						
									
										44
									
								
								test/test.js
									
									
									
									
									
								
							| @@ -1,15 +1,23 @@ | ||||
| "use strict"; | ||||
| require("typings-test"); | ||||
| var shelljs = require("shelljs"); | ||||
| var path = require("path"); | ||||
| require("should"); | ||||
| var smartgit = require("../dist/index"); | ||||
| var paths = { | ||||
|     temp: path.resolve("./test/temp/"), | ||||
|     temp2: path.resolve("./test/temp2/"), | ||||
|     temp3: path.resolve("./test/temp3"), | ||||
|     temp4: path.resolve("./test/temp4"), | ||||
|     noGit: path.resolve("./test/") | ||||
| }; | ||||
| describe("smartgit", function () { | ||||
|     describe(".clone", function () { | ||||
|         it("should clone a repository using ssh and sshkey", function (done) { | ||||
|             this.timeout(20000); | ||||
|             smartgit.clone({ | ||||
|                 from: "git@gitlab.com:sandboxzone/sandbox-testrepo.git", | ||||
|                 to: path.resolve("./test/temp/") | ||||
|                 to: paths.temp | ||||
|             }).then(function () { | ||||
|                 done(); | ||||
|             }); | ||||
| @@ -18,17 +26,45 @@ describe("smartgit", function () { | ||||
|             this.timeout(20000); | ||||
|             smartgit.clone({ | ||||
|                 from: "https://gitlab.com/sandboxzone/sandbox-testrepo.git", | ||||
|                 to: path.resolve("./test/temp2/") | ||||
|                 to: paths.temp2 | ||||
|             }).then(function () { | ||||
|                 done(); | ||||
|             }); | ||||
|         }); | ||||
|     }); | ||||
|     describe(".check", function () { | ||||
|     describe(".add", function () { | ||||
|         it("should error for noGit", function () { | ||||
|             smartgit.add.addAll(paths.noGit); | ||||
|         }); | ||||
|         it("should add a file to an existing repository", function () { | ||||
|             shelljs.exec("(cd " + paths.temp + " && cp ../test.js .)"); | ||||
|             smartgit.add.addAll(paths.temp); | ||||
|         }); | ||||
|     }); | ||||
|     describe("commit", function () { | ||||
|         it("should error for noGit", function () { | ||||
|             smartgit.commit(paths.noGit, "some commit message"); | ||||
|         }); | ||||
|         it("should commit a new file to an existing repository", function () { | ||||
|             smartgit.commit(paths.temp, "added a new file"); | ||||
|         }); | ||||
|     }); | ||||
|     describe("init", function () { | ||||
|         it("should error for noGit", function () { | ||||
|             smartgit.init(paths.noGit); | ||||
|         }); | ||||
|         it("should init a new git", function () { | ||||
|             smartgit.init(paths.temp3); | ||||
|         }); | ||||
|     }); | ||||
|     describe("pull", function () { | ||||
|         this.timeout(10000); | ||||
|         it("should error for noGit", function () { | ||||
|             smartgit.pull(paths.noGit); | ||||
|         }); | ||||
|         it("should pull from origin", function () { | ||||
|             smartgit.pull(paths.temp); | ||||
|         }); | ||||
|     }); | ||||
| }); | ||||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sY0FBYyxDQUFDLENBQUE7QUFFdEIsSUFBTyxJQUFJLFdBQVcsTUFBTSxDQUFDLENBQUM7QUFDOUIsUUFBTyxRQUVQLENBQUMsQ0FGYztBQUVmLElBQU8sUUFBUSxXQUFXLGVBQWUsQ0FBQyxDQUFDO0FBRTNDLFFBQVEsQ0FBQyxVQUFVLEVBQUM7SUFDaEIsUUFBUSxDQUFDLFFBQVEsRUFBQztRQUNkLEVBQUUsQ0FBQyxnREFBZ0QsRUFBQyxVQUFTLElBQUk7WUFDN0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwQixRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUNYLElBQUksRUFBQyxpREFBaUQ7Z0JBQ3RELEVBQUUsRUFBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQzthQUNsQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNKLElBQUksRUFBRSxDQUFDO1lBQ1gsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztRQUNILEVBQUUsQ0FBQyx1Q0FBdUMsRUFBQyxVQUFTLElBQUk7WUFDcEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwQixRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUNYLElBQUksRUFBQyxxREFBcUQ7Z0JBQzFELEVBQUUsRUFBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQzthQUNuQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNKLElBQUksRUFBRSxDQUFDO1lBQ1gsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ0gsUUFBUSxDQUFDLFFBQVEsRUFBQztJQUVsQixDQUFDLENBQUMsQ0FBQztJQUNILFFBQVEsQ0FBQyxRQUFRLEVBQUM7SUFFbEIsQ0FBQyxDQUFDLENBQUM7SUFDSCxRQUFRLENBQUMsTUFBTSxFQUFDO0lBRWhCLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDLENBQUMifQ== | ||||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sY0FBYyxDQUFDLENBQUE7QUFFdEIsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ2pDLElBQU8sSUFBSSxXQUFXLE1BQU0sQ0FBQyxDQUFDO0FBQzlCLFFBQU8sUUFFUCxDQUFDLENBRmM7QUFFZixJQUFPLFFBQVEsV0FBVyxlQUFlLENBQUMsQ0FBQztBQUMzQyxJQUFJLEtBQUssR0FBRztJQUNSLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQztJQUNsQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7SUFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDO0lBQ25DLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQztJQUNuQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7Q0FDakMsQ0FBQTtBQUVELFFBQVEsQ0FBQyxVQUFVLEVBQUM7SUFDaEIsUUFBUSxDQUFDLFFBQVEsRUFBQztRQUNkLEVBQUUsQ0FBQyxnREFBZ0QsRUFBQyxVQUFTLElBQUk7WUFDN0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwQixRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUNYLElBQUksRUFBQyxpREFBaUQ7Z0JBQ3RELEVBQUUsRUFBQyxLQUFLLENBQUMsSUFBSTthQUNoQixDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNKLElBQUksRUFBRSxDQUFDO1lBQ1gsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztRQUNILEVBQUUsQ0FBQyx1Q0FBdUMsRUFBQyxVQUFTLElBQUk7WUFDcEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwQixRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUNYLElBQUksRUFBQyxxREFBcUQ7Z0JBQzFELEVBQUUsRUFBQyxLQUFLLENBQUMsS0FBSzthQUNqQixDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNKLElBQUksRUFBRSxDQUFDO1lBQ1gsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ0gsUUFBUSxDQUFDLE1BQU0sRUFBQztRQUNaLEVBQUUsQ0FBQyx3QkFBd0IsRUFBQztZQUN4QixRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUE7UUFDRixFQUFFLENBQUMsNkNBQTZDLEVBQUM7WUFDN0MsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFPLEtBQUssQ0FBQyxJQUFJLHlCQUFzQixDQUFDLENBQUE7WUFDckQsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFDLENBQUM7SUFDSCxRQUFRLENBQUMsUUFBUSxFQUFDO1FBQ2QsRUFBRSxDQUFDLHdCQUF3QixFQUFDO1lBQ3hCLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFBO1FBQ0YsRUFBRSxDQUFDLG9EQUFvRCxFQUFDO1lBQ3BELFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksRUFBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ25ELENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFDLENBQUM7SUFDSCxRQUFRLENBQUMsTUFBTSxFQUFDO1FBQ1osRUFBRSxDQUFDLHdCQUF3QixFQUFDO1lBQ3hCLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO1FBQ0gsRUFBRSxDQUFDLHVCQUF1QixFQUFDO1lBQ3ZCLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFDLENBQUM7SUFDSCxRQUFRLENBQUMsTUFBTSxFQUFDO1FBQ1osSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQixFQUFFLENBQUMsd0JBQXdCLEVBQUM7WUFDeEIsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7UUFDSCxFQUFFLENBQUMseUJBQXlCLEVBQUM7WUFDekIsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyxDQUFDIn0= | ||||
							
								
								
									
										45
									
								
								test/test.ts
									
									
									
									
									
								
							
							
						
						
									
										45
									
								
								test/test.ts
									
									
									
									
									
								
							| @@ -1,9 +1,17 @@ | ||||
| import "typings-test"; | ||||
| import beautylog = require("beautylog"); | ||||
| let shelljs = require("shelljs"); | ||||
| import path = require("path"); | ||||
| import "should" | ||||
|  | ||||
| import smartgit = require("../dist/index"); | ||||
| let paths = { | ||||
|     temp: path.resolve("./test/temp/"), | ||||
|     temp2: path.resolve("./test/temp2/"), | ||||
|     temp3: path.resolve("./test/temp3"), | ||||
|     temp4: path.resolve("./test/temp4"), | ||||
|     noGit: path.resolve("./test/") | ||||
| } | ||||
|  | ||||
| describe("smartgit",function(){ | ||||
|     describe(".clone",function(){ | ||||
| @@ -11,7 +19,7 @@ describe("smartgit",function(){ | ||||
|             this.timeout(20000); | ||||
|             smartgit.clone({ | ||||
|                 from:"git@gitlab.com:sandboxzone/sandbox-testrepo.git", | ||||
|                 to:path.resolve("./test/temp/") | ||||
|                 to:paths.temp | ||||
|             }).then(function(){ | ||||
|                 done(); | ||||
|             }); | ||||
| @@ -20,19 +28,44 @@ describe("smartgit",function(){ | ||||
|             this.timeout(20000); | ||||
|             smartgit.clone({ | ||||
|                 from:"https://gitlab.com/sandboxzone/sandbox-testrepo.git", | ||||
|                 to:path.resolve("./test/temp2/") | ||||
|                 to:paths.temp2 | ||||
|             }).then(function(){ | ||||
|                 done(); | ||||
|             }); | ||||
|         }); | ||||
|     }); | ||||
|     describe(".check",function(){ | ||||
|  | ||||
|     describe(".add",function(){ | ||||
|         it("should error for noGit",function(){ | ||||
|             smartgit.add.addAll(paths.noGit); | ||||
|         }) | ||||
|         it("should add a file to an existing repository",function(){ | ||||
|             shelljs.exec(`(cd ${paths.temp} && cp ../test.js .)`) | ||||
|             smartgit.add.addAll(paths.temp); | ||||
|         }) | ||||
|     }); | ||||
|     describe("commit",function(){ | ||||
|  | ||||
|         it("should error for noGit",function(){ | ||||
|             smartgit.commit(paths.noGit,"some commit message"); | ||||
|         }) | ||||
|         it("should commit a new file to an existing repository",function(){ | ||||
|             smartgit.commit(paths.temp,"added a new file"); | ||||
|         }) | ||||
|     }); | ||||
|     describe("init",function(){ | ||||
|  | ||||
|         it("should error for noGit",function(){ | ||||
|             smartgit.init(paths.noGit); | ||||
|         }); | ||||
|         it("should init a new git",function(){ | ||||
|             smartgit.init(paths.temp3); | ||||
|         }) | ||||
|     }); | ||||
|     describe("pull",function(){ | ||||
|         this.timeout(10000); | ||||
|         it("should error for noGit",function(){ | ||||
|             smartgit.pull(paths.noGit); | ||||
|         }); | ||||
|         it("should pull from origin",function(){ | ||||
|             smartgit.pull(paths.temp); | ||||
|         }) | ||||
|     }); | ||||
| }); | ||||
| @@ -1,15 +1,19 @@ | ||||
| import * as plugins from "./smartgit.plugins"; | ||||
| import * as helpers from "./smartgit.helpers"; | ||||
|  | ||||
| export let add = (dirPathArg:string) => { | ||||
| let addAll = (dirPathArg:string) => { | ||||
|     let done = plugins.Q.defer(); | ||||
|     if(!helpers.isGitDirectory(dirPathArg)){ | ||||
|         plugins.beautylog.error("smartgit.add expects a valif git directory!"); | ||||
|         plugins.beautylog.error("smartgit.add expects a valid git directory!"); | ||||
|         done.reject(); | ||||
|         return done.promise; | ||||
|     }; | ||||
|     // if everything is ok proceed | ||||
|     plugins.shelljs.exec(""); | ||||
|     plugins.shelljs.exec(`(cd ${dirPathArg} && git add -A && git status)`); | ||||
|     done.resolve(dirPathArg); | ||||
|     return done.promise; | ||||
| }; | ||||
|  | ||||
| export let add = { | ||||
|     addAll: addAll | ||||
| } | ||||
|   | ||||
| @@ -9,7 +9,7 @@ export let commit = (dirPathArg:string,commitMessage:string) => { | ||||
|         return done.promise; | ||||
|     }; | ||||
|     // if everything is all right proceed | ||||
|     plugins.shelljs.exec(`git commit -m "${commitMessage}"`); | ||||
|     plugins.shelljs.exec(`(cd ${dirPathArg} && git commit -m "${commitMessage}")`); | ||||
|     done.resolve(); | ||||
|     return done.promise; | ||||
| }; | ||||
| @@ -1,7 +1,12 @@ | ||||
| import * as plugins from "./smartgit.plugins"; | ||||
|  | ||||
| export let isGitDirectory = (dirPathArg):boolean => { | ||||
|     return plugins.smartfile.fs.isDirectory( | ||||
|         plugins.path.join(dirPathArg,".git") | ||||
|     ); | ||||
|     try { | ||||
|         return plugins.smartfile.fs.isDirectory( | ||||
|             plugins.path.join(dirPathArg,".git") | ||||
|         ); | ||||
|     } | ||||
|     catch(err){ | ||||
|         return false; | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user