mirror of
https://github.com/strapi/strapi.git
synced 2025-12-25 06:04:29 +00:00
add base for e2e tests
Signed-off-by: Pierre Noël <petersg83@gmail.com>
This commit is contained in:
parent
eec2937d9c
commit
81640de2e7
@ -3,7 +3,7 @@
|
||||
module.exports = {
|
||||
async findOne(ctx) {
|
||||
const { id } = ctx.params;
|
||||
const role = await strapi.admin.services.role.fetch({ id });
|
||||
const role = await strapi.admin.services.role.findOne({ id });
|
||||
|
||||
if (!role) {
|
||||
return ctx.notFound('role.notFound');
|
||||
|
||||
@ -16,12 +16,12 @@ describe('Role', () => {
|
||||
|
||||
const createdRole = await roleService.create(input);
|
||||
|
||||
expect(dbCreate).toHaveBeenCalled();
|
||||
expect(dbCreate).toHaveBeenCalledWith(input);
|
||||
expect(createdRole).toStrictEqual(input);
|
||||
});
|
||||
});
|
||||
describe('fetch', () => {
|
||||
test('Fetches a role', async () => {
|
||||
describe('find one', () => {
|
||||
test('Finds a role', async () => {
|
||||
const role = {
|
||||
id: 1,
|
||||
name: 'super_admin',
|
||||
@ -33,10 +33,10 @@ describe('Role', () => {
|
||||
query: () => ({ findOne: dbFindOne }),
|
||||
};
|
||||
|
||||
const fetchedRole = await roleService.fetch({ id: role.id });
|
||||
const foundRole = await roleService.findOne({ id: role.id });
|
||||
|
||||
expect(dbFindOne).toHaveBeenCalled();
|
||||
expect(fetchedRole).toStrictEqual(role);
|
||||
expect(dbFindOne).toHaveBeenCalledWith({ id: role.id });
|
||||
expect(foundRole).toStrictEqual(role);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@ -1,19 +1,22 @@
|
||||
module.exports = {
|
||||
/**
|
||||
* Create and save a role in database
|
||||
* @param attributes A partial role object
|
||||
* @returns {Promise<role>}
|
||||
*/
|
||||
create(attributes) {
|
||||
return strapi.query('role', 'admin').create(attributes);
|
||||
},
|
||||
|
||||
/**
|
||||
* fetch a role in database
|
||||
* @param params query params to find the role
|
||||
* @returns {Promise<user>}
|
||||
*/
|
||||
fetch(params) {
|
||||
return strapi.query('role', 'admin').findOne(params);
|
||||
},
|
||||
/**
|
||||
* Create and save a role in database
|
||||
* @param attributes A partial role object
|
||||
* @returns {Promise<role>}
|
||||
*/
|
||||
const create = attributes => {
|
||||
return strapi.query('role', 'admin').create(attributes);
|
||||
};
|
||||
|
||||
/**
|
||||
* Find a role in database
|
||||
* @param params query params to find the role
|
||||
* @returns {Promise<role>}
|
||||
*/
|
||||
const findOne = params => {
|
||||
return strapi.query('role', 'admin').findOne(params);
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
create,
|
||||
findOne,
|
||||
};
|
||||
|
||||
50
packages/strapi-admin/test/admin-role-crud.test.e2e.js
Normal file
50
packages/strapi-admin/test/admin-role-crud.test.e2e.js
Normal file
@ -0,0 +1,50 @@
|
||||
// Helpers.
|
||||
const { registerAndLogin } = require('../../../test/helpers/auth');
|
||||
const { createAuthRequest } = require('../../../test/helpers/request');
|
||||
|
||||
let rq;
|
||||
|
||||
const data = {
|
||||
roles: [],
|
||||
};
|
||||
describe('Role CRUD End to End', () => {
|
||||
beforeAll(async () => {
|
||||
const token = await registerAndLogin();
|
||||
rq = createAuthRequest(token);
|
||||
}, 60000);
|
||||
|
||||
describe('Create a new role', () => {
|
||||
test.skip('Can create a role successfully', async () => {
|
||||
const role = {
|
||||
name: 'new role',
|
||||
description: 'Description of new role',
|
||||
};
|
||||
|
||||
const res = await rq({
|
||||
url: '/admin/roles',
|
||||
method: 'POST',
|
||||
body: role,
|
||||
});
|
||||
|
||||
data.roles.push(res);
|
||||
|
||||
expect(res.statusCode).toBe(201);
|
||||
expect(res.body).toMatchObject({
|
||||
name: role.name,
|
||||
description: role.description,
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('Find a role', () => {
|
||||
test.skip('Can find a role successfully', async () => {
|
||||
const res = await rq({
|
||||
url: `/admin/roles/${data.roles[0].id}`,
|
||||
method: 'GET',
|
||||
});
|
||||
|
||||
expect(res.statusCode).toBe(200);
|
||||
expect(res.body).toMatchObject(data[0]);
|
||||
});
|
||||
});
|
||||
});
|
||||
Loading…
x
Reference in New Issue
Block a user