import "typings-test"; import path = require("path"); import "should"; import {Qenv} from "qenv"; import * as smartnginx from "../dist/index"; // setup environment let testQenv = new Qenv(process.cwd(),path.join(process.cwd(),".nogit")); describe("smartnginx",function(){ let testNginxConfig:smartnginx.NginxConfig; let testNginxZone01:smartnginx.NginxZone; let testNginxZone02:smartnginx.NginxZone; describe("NginxZone",function(){ it(`"new NginxZone()" should produce an instance of NginxConfig`,function(){ testNginxZone01 = new smartnginx.NginxZone({ zoneName:"test100.bleu.de", type:smartnginx.zoneTypes.reverseProxy, destination:"192.192.192.191" }); testNginxZone02 = new smartnginx.NginxZone({ zoneName:"test102.bleu.de", type:smartnginx.zoneTypes.reverseProxy, destination:"192.192.192.192" }); testNginxZone01.should.be.instanceof(smartnginx.NginxZone); console.log(testNginxZone01.configString); }); }); describe("NginxConfig",function(){ this.timeout(10000); it(`"new NginxConfig()" should produce an instance of NginxConfig`,function(){ testNginxConfig = new smartnginx.NginxConfig({ cfEmail: process.env.CF_EMAIL, cfKey: process.env.CF_KEY, testMode:true }); testNginxConfig.should.be.instanceof(smartnginx.NginxConfig); }); describe(".addZone()",function(){ it("should add a zone to NginxConfig Object",function(){ testNginxConfig.addZone(testNginxZone01); testNginxConfig.addZone(testNginxZone02); }) }); describe(".deploy()",function(){ this.timeout(600000); it("should deploy a config from an instance",function(done){ testNginxConfig.deploy() .then(() => { done(); }); }) }); describe(".stop",function(){ it("should end the process",function(){ testNginxConfig.nginxProcess.stop(); }) }) }); });