FullCertProvision.cy.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /// <reference types="cypress" />
  2. describe('Full Certificate Provisions', () => {
  3. let token;
  4. before(() => {
  5. cy.resetUsers();
  6. cy.getToken().then((tok) => {
  7. token = tok;
  8. });
  9. });
  10. it('Should be able to create new http certificate', () => {
  11. cy.task('backendApiPost', {
  12. token: token,
  13. path: '/api/nginx/certificates',
  14. data: {
  15. domain_names: [
  16. 'website1.example.com'
  17. ],
  18. meta: {
  19. dns_challenge: false
  20. },
  21. provider: 'letsencrypt'
  22. }
  23. }).then((data) => {
  24. cy.validateSwaggerSchema('post', 201, '/nginx/certificates', data);
  25. expect(data).to.have.property('id');
  26. expect(data.id).to.be.greaterThan(0);
  27. expect(data.provider).to.be.equal('letsencrypt');
  28. });
  29. });
  30. it('Should be able to create new DNS certificate with Powerdns', () => {
  31. cy.task('backendApiPost', {
  32. token: token,
  33. path: '/api/nginx/certificates',
  34. data: {
  35. domain_names: [
  36. 'website2.example.com'
  37. ],
  38. meta: {
  39. dns_challenge: true,
  40. dns_provider: 'powerdns',
  41. dns_provider_credentials: 'dns_powerdns_api_url = http://ns1.pdns:8081\r\ndns_powerdns_api_key = npm',
  42. propagation_seconds: 5,
  43. },
  44. provider: 'letsencrypt'
  45. }
  46. }).then((data) => {
  47. cy.validateSwaggerSchema('post', 201, '/nginx/certificates', data);
  48. expect(data).to.have.property('id');
  49. expect(data.id).to.be.greaterThan(0);
  50. expect(data.provider).to.be.equal('letsencrypt');
  51. expect(data.meta.dns_provider).to.be.equal('powerdns');
  52. });
  53. });
  54. });