Refactor tests
Avoid too many repeatations
This commit is contained in:
14
package.json
14
package.json
@@ -21,11 +21,11 @@
|
||||
"swagger-client": "2.1.9-M1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"chai": "^1.10.0",
|
||||
"cors": "^2.1.1",
|
||||
"docco": "^0.4.0",
|
||||
"chai": "^2.1.0",
|
||||
"cors": "^2.5.3",
|
||||
"docco": "^0.7.0",
|
||||
"event-stream": "^3.2.2",
|
||||
"express": "^3.20.0",
|
||||
"express": "^4.12.0",
|
||||
"gulp": "^3.8.11",
|
||||
"gulp-clean": "^0.3.1",
|
||||
"gulp-coffee": "^2.3.1",
|
||||
@@ -33,16 +33,16 @@
|
||||
"gulp-connect": "^2.2.0",
|
||||
"gulp-declare": "^0.3.0",
|
||||
"gulp-handlebars": "^3.0.1",
|
||||
"gulp-header": "1.2.2",
|
||||
"gulp-header": "^1.2.2",
|
||||
"gulp-less": "^3.0.1",
|
||||
"gulp-order": "^1.1.1",
|
||||
"gulp-rename": "^1.2.0",
|
||||
"gulp-uglify": "^1.1.0",
|
||||
"gulp-util": "^3.0.4",
|
||||
"gulp-watch": "^4.1.1",
|
||||
"gulp-wrap": "^0.10.1",
|
||||
"gulp-wrap": "^0.11.0",
|
||||
"http-server": "^0.7.5",
|
||||
"less": "^1.4.2",
|
||||
"less": "^2.4.0",
|
||||
"mocha": "^2.1.0",
|
||||
"selenium-webdriver": "^2.45.0"
|
||||
}
|
||||
|
||||
9
test/e2e/driver.js
Normal file
9
test/e2e/driver.js
Normal file
@@ -0,0 +1,9 @@
|
||||
/*
|
||||
* Web driver manager
|
||||
*/
|
||||
|
||||
var webdriver = require('selenium-webdriver');
|
||||
|
||||
var driver = new webdriver.Builder().withCapabilities(webdriver.Capabilities.firefox()).build();
|
||||
|
||||
module.exports = driver;
|
||||
41
test/e2e/servers.js
Normal file
41
test/e2e/servers.js
Normal file
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* Swagger UI and Specs Servers
|
||||
*/
|
||||
var path = require('path')
|
||||
var createServer = require('http-server').createServer;
|
||||
|
||||
var dist = path.join(__dirname, '..', '..', 'dist');
|
||||
var specs = path.join(__dirname, '..', '..', 'test', 'specs');
|
||||
var DOCS_PORT = 8080;
|
||||
var SPEC_SERVER_PORT = 8081;
|
||||
|
||||
var driver = require('./driver');
|
||||
|
||||
var headers = {
|
||||
'Access-Control-Allow-Origin': '*',
|
||||
'Access-Control-Allow-Headers': 'Origin, X-Requested-With, Content-Type, Accept'
|
||||
};
|
||||
|
||||
var swaggerUI;
|
||||
var specServer;
|
||||
|
||||
module.exports.start = function (specsLocation, done) {
|
||||
swaggerUI = createServer({ root: dist, headers: headers });
|
||||
specServer = createServer({ root: specs, headers: headers });
|
||||
|
||||
swaggerUI.listen(DOCS_PORT);
|
||||
specServer.listen(SPEC_SERVER_PORT);
|
||||
|
||||
var swaggerSpecLocation = encodeURIComponent('http://localhost:' + SPEC_SERVER_PORT + specsLocation)
|
||||
var url = 'http://localhost:' + DOCS_PORT + '/index.html?url=' + swaggerSpecLocation;
|
||||
|
||||
setTimeout(function(){
|
||||
driver.get(url);
|
||||
done();
|
||||
}, 3000);
|
||||
};
|
||||
|
||||
module.exports.close = function(){
|
||||
swaggerUI.close();
|
||||
specServer.close();
|
||||
}
|
||||
@@ -1,17 +1,7 @@
|
||||
var webdriver = require('selenium-webdriver');
|
||||
var createServer = require('http-server').createServer;
|
||||
var expect = require('chai').expect;
|
||||
var path = require('path')
|
||||
|
||||
var dist = path.join(__dirname, '..', '..', 'dist');
|
||||
var specs = path.join(__dirname, '..', '..', 'test', 'specs');
|
||||
var DOCS_PORT = 8080;
|
||||
var SPEC_SERVER_PORT = 8081
|
||||
|
||||
var headers = {
|
||||
'Access-Control-Allow-Origin': '*',
|
||||
'Access-Control-Allow-Headers': 'Origin, X-Requested-With, Content-Type, Accept'
|
||||
};
|
||||
var driver = require('./driver');
|
||||
var servers = require('./servers');
|
||||
var webdriver = require('selenium-webdriver');
|
||||
|
||||
var elements = [
|
||||
'swagger-ui-container',
|
||||
@@ -25,19 +15,9 @@ var elements = [
|
||||
|
||||
describe('swagger 1.x spec tests', function (done) {
|
||||
this.timeout(10 * 1000);
|
||||
var swaggerUI, specServer, driver;
|
||||
|
||||
before(function () {
|
||||
swaggerUI = createServer({ root: dist, headers: headers });
|
||||
specServer = createServer({ root: specs, headers: headers });
|
||||
driver = new webdriver.Builder().
|
||||
withCapabilities(webdriver.Capabilities.firefox()).build();
|
||||
|
||||
swaggerUI.listen(DOCS_PORT);
|
||||
specServer.listen(SPEC_SERVER_PORT);
|
||||
|
||||
var swaggerSpecLocation = encodeURIComponent('http://localhost:' + SPEC_SERVER_PORT + '/v1.2/petstore/api-docs')
|
||||
driver.get('http://localhost:' + DOCS_PORT + '/index.html?url=' + swaggerSpecLocation);
|
||||
before(function (done) {
|
||||
servers.start('/v1.2/petstore/api-docs', done);
|
||||
});
|
||||
|
||||
afterEach(function(){
|
||||
@@ -113,9 +93,7 @@ describe('swagger 1.x spec tests', function (done) {
|
||||
});
|
||||
});
|
||||
|
||||
after(function() {
|
||||
swaggerUI.close();
|
||||
specServer.close();
|
||||
driver.quit();
|
||||
after(function(){
|
||||
servers.close();
|
||||
});
|
||||
});
|
||||
@@ -1,17 +1,8 @@
|
||||
var webdriver = require('selenium-webdriver');
|
||||
var createServer = require('http-server').createServer;
|
||||
var expect = require('chai').expect;
|
||||
var path = require('path')
|
||||
var webdriver = require('selenium-webdriver');
|
||||
var driver = require('./driver');
|
||||
var servers = require('./servers');
|
||||
|
||||
var dist = path.join(__dirname, '..', '..', 'dist');
|
||||
var specs = path.join(__dirname, '..', '..', 'test', 'specs');
|
||||
var DOCS_PORT = 8080;
|
||||
var SPEC_SERVER_PORT = 8081
|
||||
|
||||
var headers = {
|
||||
'Access-Control-Allow-Origin': '*',
|
||||
'Access-Control-Allow-Headers': 'Origin, X-Requested-With, Content-Type, Accept'
|
||||
};
|
||||
|
||||
var elements = [
|
||||
'swagger-ui-container',
|
||||
@@ -25,19 +16,9 @@ var elements = [
|
||||
|
||||
describe('swagger 2.0 spec tests', function (done) {
|
||||
this.timeout(10 * 1000);
|
||||
var swaggerUI, specServer, driver;
|
||||
|
||||
before(function () {
|
||||
swaggerUI = createServer({ root: dist, headers: headers });
|
||||
specServer = createServer({ root: specs, headers: headers });
|
||||
driver = new webdriver.Builder().
|
||||
withCapabilities(webdriver.Capabilities.firefox()).build();
|
||||
|
||||
swaggerUI.listen(DOCS_PORT);
|
||||
specServer.listen(SPEC_SERVER_PORT);
|
||||
|
||||
var swaggerSpecLocation = encodeURIComponent('http://localhost:' + SPEC_SERVER_PORT + '/v2/petstore.json')
|
||||
driver.get('http://localhost:' + DOCS_PORT + '/index.html?url=' + swaggerSpecLocation);
|
||||
before(function (done) {
|
||||
servers.start('/v2/petstore.json', done);
|
||||
});
|
||||
|
||||
afterEach(function(){
|
||||
@@ -130,8 +111,6 @@ describe('swagger 2.0 spec tests', function (done) {
|
||||
});
|
||||
|
||||
after(function() {
|
||||
swaggerUI.close();
|
||||
specServer.close();
|
||||
driver.quit();
|
||||
servers.close();
|
||||
});
|
||||
});
|
||||
@@ -1 +1 @@
|
||||
--recursive
|
||||
--recursive --timeout 5000
|
||||
Reference in New Issue
Block a user