debug.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /* tslint:disable:no-unused-expression */
  2. import 'mocha'
  3. import {
  4. createUser,
  5. flushTests,
  6. killallServers,
  7. flushAndRunServer,
  8. ServerInfo,
  9. setAccessTokensToServers,
  10. userLogin, cleanupTests
  11. } from '../../../../shared/extra-utils'
  12. import { makeGetRequest } from '../../../../shared/extra-utils/requests/requests'
  13. describe('Test debug API validators', function () {
  14. const path = '/api/v1/server/debug'
  15. let server: ServerInfo
  16. let userAccessToken = ''
  17. // ---------------------------------------------------------------
  18. before(async function () {
  19. this.timeout(120000)
  20. server = await flushAndRunServer(1)
  21. await setAccessTokensToServers([ server ])
  22. const user = {
  23. username: 'user1',
  24. password: 'my super password'
  25. }
  26. await createUser({ url: server.url, accessToken: server.accessToken, username: user.username, password: user.password })
  27. userAccessToken = await userLogin(server, user)
  28. })
  29. describe('When getting debug endpoint', function () {
  30. it('Should fail with a non authenticated user', async function () {
  31. await makeGetRequest({
  32. url: server.url,
  33. path,
  34. statusCodeExpected: 401
  35. })
  36. })
  37. it('Should fail with a non admin user', async function () {
  38. await makeGetRequest({
  39. url: server.url,
  40. path,
  41. token: userAccessToken,
  42. statusCodeExpected: 403
  43. })
  44. })
  45. it('Should succeed with the correct params', async function () {
  46. await makeGetRequest({
  47. url: server.url,
  48. path,
  49. token: server.accessToken,
  50. query: { startDate: new Date().toISOString() },
  51. statusCodeExpected: 200
  52. })
  53. })
  54. })
  55. after(async function () {
  56. await cleanupTests([ server ])
  57. })
  58. })