npmci/ts/npmci.test.ts

42 lines
1.1 KiB
TypeScript
Raw Normal View History

2016-05-30 00:28:47 +00:00
import "typings-global";
import * as plugins from "./npmci.plugins";
2016-05-30 01:40:07 +00:00
import {bash} from "./npmci.bash";
2016-05-30 00:28:47 +00:00
import {install} from "./npmci.install";
2016-06-03 16:20:05 +00:00
import * as env from "./npmci.env";
2016-05-30 01:40:07 +00:00
2016-05-30 00:28:47 +00:00
export let test = (versionArg) => {
let done = plugins.q.defer();
if(versionArg == "docker"){
testDocker()
.then(()=>{
done.resolve();
});
} else {
install(versionArg)
.then(npmDependencies)
.then(()=>{
plugins.beautylog.info("now starting tests:");
bash("npm test");
plugins.beautylog.success("test finished");
done.resolve();
});
}
2016-05-30 00:28:47 +00:00
return done.promise;
}
let npmDependencies = function(){
let done = plugins.q.defer();
plugins.beautylog.info("now installing dependencies:");
bash("npm install");
done.resolve();
return done.promise;
}
let testDocker = function(){
let done = plugins.q.defer();
plugins.shelljs.exec("docker run --name " + env.repo.repo + " " + env.dockerTag());
done.resolve();
return done.promise;
}