mirror of
https://github.com/xiaoxinpro/nginx-proxy-manager-zh.git
synced 2025-01-23 21:28:15 -05:00
68 lines
1.7 KiB
JavaScript
68 lines
1.7 KiB
JavaScript
|
/// <reference types="Cypress" />
|
||
|
|
||
|
describe('Upstream endpoints', () => {
|
||
|
let token;
|
||
|
let upstreamId;
|
||
|
|
||
|
before(() => {
|
||
|
cy.getToken().then((tok) => {
|
||
|
token = tok;
|
||
|
});
|
||
|
});
|
||
|
|
||
|
it('Should be able to create new Upstream', function() {
|
||
|
cy.task('backendApiPost', {
|
||
|
token: token,
|
||
|
path: '/api/upstreams',
|
||
|
data: {
|
||
|
nginx_template_id: 5,
|
||
|
name: 'CypressGeneratedUpstreamA',
|
||
|
// These servers must be reachable by the Cypress CI stack!
|
||
|
servers: [
|
||
|
{
|
||
|
|
||
|
server: 'fullstack:80',
|
||
|
weight: 100
|
||
|
},
|
||
|
{
|
||
|
server: 'fullstack:443',
|
||
|
weight: 50
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
}).then((data) => {
|
||
|
// Check the swagger schema:
|
||
|
cy.validateSwaggerSchema('post', 201, '/upstreams', data);
|
||
|
expect(data.result).to.have.property('id');
|
||
|
expect(data.result.id).to.be.greaterThan(0);
|
||
|
upstreamId = data.result.id;
|
||
|
});
|
||
|
});
|
||
|
|
||
|
it('Should be able to get a Upstream', function() {
|
||
|
cy.task('backendApiGet', {
|
||
|
token: token,
|
||
|
path: '/api/upstreams/' + upstreamId
|
||
|
}).then((data) => {
|
||
|
// Check the swagger schema:
|
||
|
cy.validateSwaggerSchema('get', 200, '/upstreams/{upstreamID}', data);
|
||
|
expect(data.result).to.have.property('id');
|
||
|
expect(data.result).to.have.property('name', 'CypressGeneratedUpstreamA');
|
||
|
expect(data.result.id).to.be.greaterThan(0);
|
||
|
});
|
||
|
});
|
||
|
|
||
|
it('Should be able to get all Upstreams', function() {
|
||
|
cy.task('backendApiGet', {
|
||
|
token: token,
|
||
|
path: '/api/upstreams'
|
||
|
}).then((data) => {
|
||
|
cy.validateSwaggerSchema('get', 200, '/upstreams', data);
|
||
|
expect(data).to.have.property('result');
|
||
|
expect(data.result).to.have.property('items');
|
||
|
expect(data.result.items.length).to.be.greaterThan(0);
|
||
|
});
|
||
|
});
|
||
|
|
||
|
});
|