Update request helper

This commit is contained in:
Aurelsicoko 2018-06-13 16:16:46 +02:00
parent 7e5b859575
commit 208319b8a2
6 changed files with 57 additions and 26 deletions

View File

@ -1,7 +1,7 @@
module.exports = { module.exports = {
name: 'setup', name: 'setup',
displayName: 'Setup', displayName: 'Setup',
testMatch: ['test/?(*.)+(test).js'], testMatch: ['**/test/?(*.)+(spec|test).js'],
testPathIgnorePatterns: [ testPathIgnorePatterns: [
'<rootDir>/packages/', '<rootDir>/packages/',
], ],

View File

@ -1,7 +1,7 @@
module.exports = { module.exports = {
name: 'content-manager', name: 'content-manager',
displayName: 'Content Manager', displayName: 'Content Manager',
testMatch: ['test/?(*.)+(test).js'], testMatch: ['**/test/?(*.)+(spec|test).js'],
coveragePathIgnorePatterns: [ coveragePathIgnorePatterns: [
'<rootDir>/admin/', '<rootDir>/admin/',
'<rootDir>/dist/', '<rootDir>/dist/',

View File

@ -1,12 +1,7 @@
let request = require('request'); // Helpers.
request = request.defaults({
baseUrl: 'http://localhost:1337'
});
const form = require('../../../test/helpers/generators'); const form = require('../../../test/helpers/generators');
const restart = require('../../../test/helpers/restart'); const restart = require('../../../test/helpers/restart');
const rq = require('../../../test/helpers/request')(request); const rq = require('../../../test/helpers/request');
const cleanDate = (entry) => { const cleanDate = (entry) => {
delete entry.updatedAt; delete entry.updatedAt;
@ -32,7 +27,7 @@ describe('App setup auth', () => {
json: true json: true
}); });
request = request.defaults({ rq.defaults({
headers: { headers: {
'Authorization': `Bearer ${body.jwt}` 'Authorization': `Bearer ${body.jwt}`
} }
@ -320,6 +315,39 @@ describe('Test manyToMany relation (article - tag) with Content Manager', () =>
expect(body.tags.length).toBe(0); expect(body.tags.length).toBe(0);
} }
); );
test(
'Delete all tags should remove the association in each articles related to them',
async () => {
const tagsToCreate = ['tag11, tag12'].map(tag =>
rq({
url: `/content-manager/explorer/tag/?source=content-manager`,
method: 'POST',
json: true,
formData: {
name: tag
}
})
);
const tags = await Promise.all(tagsToCreate);
console.log(tags);
const article = await rq({
url: `/content-manager/explorer/article/?source=content-manager`,
method: 'POST',
json: true,
formData: {
title: 'Article 12',
content: 'Content',
tags: [tags[0]]
}
});
expect(article.tags[0].id).toBe(tags[0].id);
}
);
}); });
describe('Test oneToMany - manyToOne relation (article - category) with Content Manager', () => { describe('Test oneToMany - manyToOne relation (article - category) with Content Manager', () => {

View File

@ -4,22 +4,26 @@ request = request.defaults({
baseUrl: 'http://localhost:1337' baseUrl: 'http://localhost:1337'
}); });
module.exports = (request) => (options) => { module.exports = function (options) {
const params = JSON.parse(JSON.stringify(options)); const params = JSON.parse(JSON.stringify(options));
for (let key in params.formData) { for (let key in params.formData) {
if (typeof params.formData[key] === 'object') { if (typeof params.formData[key] === 'object') {
params.formData[key] = JSON.stringify(params.formData[key]); params.formData[key] = JSON.stringify(params.formData[key]);
}
} }
}
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
request(params, (err, res, body) => { request(params, (err, res, body) => {
if (err || res.statusCode < 200 || res.statusCode >= 300) { if (err || res.statusCode < 200 || res.statusCode >= 300) {
return reject(err || body); return reject(err || body);
} }
return resolve(body); return resolve(body);
});
}); });
});
}; };
module.exports.defaults = function (options) {
request = request.defaults(options);
}

View File

@ -101,8 +101,8 @@ const main = async () => {
}; };
await testProcess(databases.mongo); await testProcess(databases.mongo);
await testProcess(databases.postgres); // await testProcess(databases.postgres);
await testProcess(databases.mysql); // await testProcess(databases.mysql);
}; };
main(); main();