diff --git a/src/tests/runnerGroups/org.spec.ts b/src/tests/runnerGroups/org.spec.ts deleted file mode 100644 index e5387ea..0000000 --- a/src/tests/runnerGroups/org.spec.ts +++ /dev/null @@ -1,28 +0,0 @@ -import axios from 'axios'; -import { config } from '../../config'; -const base = "http://localhost:" + config.internal_port - -describe('GET /api/organisations', () => { - it('basic get should return 200', async () => { - const res = await axios.get(base + '/api/organisations'); - expect(res.status).toEqual(200); - expect(res.headers['content-type']).toContain("application/json") - }); -}); -// --------------- -describe('POST /api/organisation', () => { - it('creating a new org with just a name should return 200', async () => { - const res = await axios.post(base + '/api/organisation', { - "name": "test123" - }); - expect(res.status).toEqual(200); - expect(res.headers['content-type']).toContain("application/json") - }); - it('creating a new org with without a name should return 400', async () => { - const res = await axios.post(base + '/api/organisation', { - "name": null - }); - expect(res.status).toEqual(400); - expect(res.headers['content-type']).toContain("application/json") - }); -}); \ No newline at end of file diff --git a/src/tests/runnerGroups/org_basic.spec.ts b/src/tests/runnerGroups/org_basic.spec.ts new file mode 100644 index 0000000..2e768c9 --- /dev/null +++ b/src/tests/runnerGroups/org_basic.spec.ts @@ -0,0 +1,80 @@ +import axios from 'axios'; +import { config } from '../../config'; +const base = "http://localhost:" + config.internal_port + +describe('GET /api/organisations', () => { + it('basic get should return 200', async () => { + const res = await axios.get(base + '/api/organisations'); + expect(res.status).toEqual(200); + expect(res.headers['content-type']).toContain("application/json") + }); +}); +// --------------- +describe('POST /api/organisations', () => { + it('creating a new org with just a name should return 200', async () => { + const res = await axios.post(base + '/api/organisations', { + "name": "test123" + }); + expect(res.status).toEqual(200); + expect(res.headers['content-type']).toContain("application/json") + }); + it('creating a new org with without a name should return 400', async () => { + const res = await axios.post(base + '/api/organisations', { + "name": null + }, { validateStatus: undefined }); + expect(res.status).toEqual(400); + expect(res.headers['content-type']).toContain("application/json") + }); +}); +// --------------- +describe('adding + getting from all orgs', () => { + it('creating a new org with just a name should return 200', async () => { + const res = await axios.post(base + '/api/organisations', { + "name": "test123" + }); + expect(res.status).toEqual(200); + expect(res.headers['content-type']).toContain("application/json") + }); + it('check if org was added', async () => { + const res = await axios.get(base + '/api/organisations'); + expect(res.status).toEqual(200); + expect(res.headers['content-type']).toContain("application/json") + let added_org = res.data[res.data.length - 1] + delete added_org.id + expect(added_org).toEqual({ + "name": "test123", + "contact": null, + "address": null, + "teams": [] + }) + }); +}); +// --------------- +describe('adding + getting explicitly', () => { + let added_org_id + describe('adding + getting orgs', () => { + it('creating a new org with just a name should return 200', async () => { + const res1 = await axios.post(base + '/api/organisations', { + "name": "test123" + }); + let added_org = res1.data + added_org_id = added_org.id; + expect(res1.status).toEqual(200); + expect(res1.headers['content-type']).toContain("application/json") + }); + it('check if org was added', async () => { + const res2 = await axios.get(base + '/api/organisations/' + added_org_id); + expect(res2.status).toEqual(200); + expect(res2.headers['content-type']).toContain("application/json") + let added_org2 = res2.data + added_org_id = added_org2.id; + delete added_org2.id + expect(added_org2).toEqual({ + "name": "test123", + "contact": null, + "address": null, + "teams": [] + }) + }); + }); +});