Add admin route test

This commit is contained in:
Elliot DeNolf
2018-04-21 13:57:19 -06:00
parent 69ae8ea1b1
commit 60ff3f53cf
4 changed files with 82 additions and 3 deletions

View File

@@ -1,5 +1,5 @@
{
"name": "payload",
"name": "payload-tester",
"version": "1.0.0",
"lockfileVersion": 1,
"requires": true,
@@ -1499,6 +1499,12 @@
"resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
},
"cookiejar": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.1.tgz",
"integrity": "sha1-Qa1XsbVVlR7BcUEqgZQrHoIA00o=",
"dev": true
},
"copy-descriptor": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
@@ -2359,6 +2365,12 @@
"mime-types": "2.1.18"
}
},
"formidable": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz",
"integrity": "sha512-Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg==",
"dev": true
},
"forwarded": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
@@ -7134,6 +7146,45 @@
"integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
"dev": true
},
"superagent": {
"version": "3.8.2",
"resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.2.tgz",
"integrity": "sha512-gVH4QfYHcY3P0f/BZzavLreHW3T1v7hG9B+hpMQotGQqurOvhv87GcMCd6LWySmBuf+BDR44TQd0aISjVHLeNQ==",
"dev": true,
"requires": {
"component-emitter": "1.2.1",
"cookiejar": "2.1.1",
"debug": "3.1.0",
"extend": "3.0.1",
"form-data": "2.3.2",
"formidable": "1.2.1",
"methods": "1.1.2",
"mime": "1.4.1",
"qs": "6.5.1",
"readable-stream": "2.3.6"
},
"dependencies": {
"debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"dev": true,
"requires": {
"ms": "2.0.0"
}
}
}
},
"supertest": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/supertest/-/supertest-3.0.0.tgz",
"integrity": "sha1-jUu2j9GDDuBwM7HFpamkAhyWUpY=",
"dev": true,
"requires": {
"methods": "1.1.2",
"superagent": "3.8.2"
}
},
"supports-color": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",

View File

@@ -18,6 +18,7 @@
"devDependencies": {
"eslint": "^4.19.1",
"jest": "^22.4.3",
"nodemon": "^1.17.3"
"nodemon": "^1.17.3",
"supertest": "^3.0.0"
}
}

View File

@@ -1,7 +1,10 @@
/* eslint-disable no-magic-numbers */
const express = require('express');
const app = express();
const mongoose = require('mongoose');
const request = require('supertest');
const Payload = require('../');
function initBasicPayload() {
@@ -12,12 +15,36 @@ function initBasicPayload() {
});
}
function getConfiguredExpress() {
let expressApp = express();
expressApp.set('view engine', 'pug'); //TODO: Reactify
return expressApp;
}
describe('Basic Payload Tests', () => {
test('Instantiate Payload', () => {
const payload = initBasicPayload();
expect(payload).toBeDefined();
});
test('Mount Admin view', (done) => {
const expressApp = getConfiguredExpress();
const payload = new Payload({
express: expressApp,
mongoose: mongoose,
baseURL: 'base123'
});
expressApp.set('views', payload.views);
let server = expressApp.listen(3000, () => { console.log('Example app listening on http://localhost:3000');});
request(expressApp).get('/payload/admin').then((response) => {
expect(response.statusCode).toEqual(200);
server.close();
done();
});
});
test('Create new collection', () => {
const payload = initBasicPayload();
let collection = payload.newCollection('key');