/// const fns = require('../support/functions'); describe('Settings endpoints', () => { let token; let settingName = 'cypressSetting_' + fns.generateRandomString(12); before(() => { cy.getToken().then((tok) => { token = tok; }); }); it('Should be able to create new settting', function() { cy.task('backendApiPost', { token: token, path: '/api/settings', data: { name: settingName, value: { type: 'custom', html: '

not found

' } } }).then((data) => { // Check the swagger schema: cy.validateSwaggerSchema('post', 201, '/settings', data); expect(data.result).to.have.property('id'); expect(data.result.id).to.be.greaterThan(0); }); }); it('Should be able to get a settting', function() { cy.task('backendApiGet', { token: token, path: '/api/settings/' + settingName }).then((data) => { // Check the swagger schema: cy.validateSwaggerSchema('get', 200, '/settings/{name}', data); expect(data.result).to.have.property('id'); expect(data.result).to.have.property('name', settingName); expect(data.result.id).to.be.greaterThan(0); }); }); it('Should be able to update a settting', function() { cy.task('backendApiPut', { token: token, path: '/api/settings/' + settingName, data: { value: true } }).then((data) => { // Check the swagger schema: cy.validateSwaggerSchema('put', 200, '/settings/{name}', data); expect(data.result).to.have.property('id'); expect(data.result).to.have.property('name', settingName); expect(data.result.id).to.be.greaterThan(0); }); }); it('Should be able to get all settings', function() { cy.task('backendApiGet', { token: token, path: '/api/settings' }).then((data) => { cy.validateSwaggerSchema('get', 200, '/settings', data); expect(data).to.have.property('result'); expect(data.result).to.have.property('items'); expect(data.result.items.length).to.be.greaterThan(0); }); }); it('Should be able to get all settings with filters A', function() { cy.task('backendApiGet', { token: token, path: '/api/settings?sort=name&name:starts=e&limit=1' }).then((data) => { cy.validateSwaggerSchema('get', 200, '/settings', data); expect(data).to.have.property('result'); expect(data.result).to.have.property('items'); expect(data.result.items.length).to.be.greaterThan(0); }); }); it('Should be able to get all settings with filters B', function() { cy.task('backendApiGet', { token: token, path: '/api/settings?id:in=1,2,3,4,5&limit=1' }).then((data) => { cy.validateSwaggerSchema('get', 200, '/settings', data); expect(data).to.have.property('result'); expect(data.result).to.have.property('items'); expect(data.result.items.length).to.be.greaterThan(0); }); }); it('Should be able to get all settings with filters C', function() { cy.task('backendApiGet', { token: token, path: '/api/settings?name:starts=xxxxxxxxxxxxxxx' }).then((data) => { cy.validateSwaggerSchema('get', 200, '/settings', data); expect(data).to.have.property('result'); expect(data.result).to.have.property('total', 0); }); }); });