mirror of
https://github.com/ENSL/ensl_gathers.git
synced 2025-04-25 00:41:07 +00:00
Expose current gather API and add cors
This commit is contained in:
parent
1fd8835d20
commit
a8e5f29af1
4 changed files with 54 additions and 15 deletions
|
@ -3,8 +3,12 @@
|
|||
var path = require("path");
|
||||
var winston = require("winston");
|
||||
var config = require("./config.js");
|
||||
var Gather = require("../lib/gather/gather_singleton");
|
||||
var cors = require("cors");
|
||||
|
||||
module.exports = app => {
|
||||
app.use(cors());
|
||||
|
||||
app.get("/", (request, response, next) => {
|
||||
response.render("index.hbs", {
|
||||
redirect: config.ensl_url,
|
||||
|
@ -18,6 +22,11 @@ module.exports = app => {
|
|||
});
|
||||
});
|
||||
|
||||
app.get("/gathers/current", (request, response) => {
|
||||
let gather = Gather.current;
|
||||
response.status(200).json(gather.toJson());
|
||||
});
|
||||
|
||||
app.get("*", (request, response) => {
|
||||
response.status(404).render("404.hbs");
|
||||
});
|
||||
|
|
36
npm-shrinkwrap.json
generated
36
npm-shrinkwrap.json
generated
|
@ -963,7 +963,7 @@
|
|||
},
|
||||
"once": {
|
||||
"version": "1.3.2",
|
||||
"from": "once@>=1.3.0 <2.0.0",
|
||||
"from": "once@>=1.3.0 <1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.3.2.tgz",
|
||||
"dependencies": {
|
||||
"wrappy": {
|
||||
|
@ -1045,6 +1045,18 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"cors": {
|
||||
"version": "2.7.1",
|
||||
"from": "cors@>=2.7.1 <3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/cors/-/cors-2.7.1.tgz",
|
||||
"dependencies": {
|
||||
"vary": {
|
||||
"version": "1.0.1",
|
||||
"from": "vary@>=1.0.0 <2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/vary/-/vary-1.0.1.tgz"
|
||||
}
|
||||
}
|
||||
},
|
||||
"express": {
|
||||
"version": "4.13.3",
|
||||
"from": "express@>=4.13.1 <4.14.0",
|
||||
|
@ -1289,7 +1301,7 @@
|
|||
"dependencies": {
|
||||
"glob": {
|
||||
"version": "5.0.14",
|
||||
"from": "glob@>=5.0.13 <6.0.0",
|
||||
"from": "glob@>=5.0.0 <6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-5.0.14.tgz",
|
||||
"dependencies": {
|
||||
"inflight": {
|
||||
|
@ -2235,7 +2247,7 @@
|
|||
"dependencies": {
|
||||
"babel-core": {
|
||||
"version": "5.8.24",
|
||||
"from": "babel-core@>=5.6.21 <6.0.0",
|
||||
"from": "babel-core@>=5.8.19 <6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/babel-core/-/babel-core-5.8.24.tgz",
|
||||
"dependencies": {
|
||||
"babel-plugin-constant-folding": {
|
||||
|
@ -3200,7 +3212,7 @@
|
|||
},
|
||||
"xtend": {
|
||||
"version": "4.0.0",
|
||||
"from": "xtend@>=4.0.0 <4.1.0",
|
||||
"from": "xtend@>=4.0.0 <4.1.0-0",
|
||||
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.0.tgz"
|
||||
}
|
||||
}
|
||||
|
@ -3588,7 +3600,7 @@
|
|||
},
|
||||
"through2": {
|
||||
"version": "0.6.5",
|
||||
"from": "through2@>=0.6.3 <0.7.0",
|
||||
"from": "through2@>=0.6.0 <0.7.0",
|
||||
"resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz",
|
||||
"dependencies": {
|
||||
"readable-stream": {
|
||||
|
@ -3970,7 +3982,7 @@
|
|||
},
|
||||
"through2": {
|
||||
"version": "0.6.5",
|
||||
"from": "through2@>=0.6.3 <0.7.0",
|
||||
"from": "through2@>=0.6.0 <0.7.0",
|
||||
"resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz",
|
||||
"dependencies": {
|
||||
"readable-stream": {
|
||||
|
@ -5122,9 +5134,9 @@
|
|||
"resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.0.tgz",
|
||||
"dependencies": {
|
||||
"hoek": {
|
||||
"version": "2.16.0",
|
||||
"version": "2.16.2",
|
||||
"from": "hoek@>=2.0.0 <3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.0.tgz"
|
||||
"resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.2.tgz"
|
||||
},
|
||||
"boom": {
|
||||
"version": "2.8.0",
|
||||
|
@ -5957,9 +5969,9 @@
|
|||
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz",
|
||||
"dependencies": {
|
||||
"is-buffer": {
|
||||
"version": "1.0.2",
|
||||
"version": "1.1.0",
|
||||
"from": "is-buffer@>=1.0.2 <2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.0.2.tgz"
|
||||
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.0.tgz"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -5993,9 +6005,9 @@
|
|||
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz",
|
||||
"dependencies": {
|
||||
"is-buffer": {
|
||||
"version": "1.0.2",
|
||||
"version": "1.1.0",
|
||||
"from": "is-buffer@>=1.0.2 <2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.0.2.tgz"
|
||||
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.0.tgz"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
"async": "~1.4.0",
|
||||
"babel": "~5.8.21",
|
||||
"cookie-parser": "~1.3.5",
|
||||
"cors": "^2.7.1",
|
||||
"express": "~4.13.1",
|
||||
"express-handlebars": "~2.0.1",
|
||||
"extend": "~3.0.0",
|
||||
|
|
|
@ -2,20 +2,37 @@
|
|||
|
||||
var helper = require("./helpers/index.js");
|
||||
var request = require("supertest");
|
||||
var assert = require("chai").assert;
|
||||
var app = helper.app;
|
||||
|
||||
describe("Basic Spec", function () {
|
||||
it ("serves main page", function (done) {
|
||||
describe("Basic Spec", () => {
|
||||
it ("serves main page", done => {
|
||||
request(app)
|
||||
.get("/")
|
||||
.expect(200)
|
||||
.end(done);
|
||||
});
|
||||
|
||||
it ("returns 404 if page not found", function (done) {
|
||||
it ("returns 404 if page not found", done => {
|
||||
request(app)
|
||||
.get("/foo")
|
||||
.expect(404)
|
||||
.end(done);
|
||||
});
|
||||
});
|
||||
|
||||
describe("Gathers API", () => {
|
||||
describe("gathers/current", () => {
|
||||
it ("returns the current gather", done => {
|
||||
request(app)
|
||||
.get("/gathers/current")
|
||||
.expect(200)
|
||||
.end((error, response) => {
|
||||
if (error) return done(error);
|
||||
assert.equal(response.body.gatherers.length, 0);
|
||||
assert.equal(response.body.state, 'gathering');
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
Loading…
Reference in a new issue