Skip to content

Commit 51cbf32

Browse files
committed
move v2 upcoming launches test to unique file
1 parent 6afc56e commit 51cbf32

File tree

3 files changed

+93
-85
lines changed

3 files changed

+93
-85
lines changed

test/v2-errors.test.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
2+
const request = require('supertest');
3+
const app = require('../src/app');
4+
5+
beforeAll((done) => {
6+
app.on('ready', () => {
7+
done();
8+
});
9+
});
10+
11+
//------------------------------------------------------------
12+
// 404 Test
13+
//------------------------------------------------------------
14+
15+
test('It should return 404 error', () => {
16+
return request(app).get('/v1').then((response) => {
17+
expect(response.statusCode).toBe(404);
18+
});
19+
});

test/v2-routes.test.js

Lines changed: 0 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -9,71 +9,6 @@ beforeAll((done) => {
99
});
1010
});
1111

12-
//------------------------------------------------------------
13-
// Upcoming Launches V2
14-
//------------------------------------------------------------
15-
16-
test('It should return all upcoming launches', () => {
17-
return request(app.listen()).get('/v2/launches/upcoming').then((response) => {
18-
expect(response.statusCode).toBe(200);
19-
response.body.forEach((item) => {
20-
expect(item).toHaveProperty('flight_number', expect.anything());
21-
expect(item).toHaveProperty('launch_year');
22-
expect(item).toHaveProperty('launch_date_unix');
23-
expect(item).toHaveProperty('launch_date_utc');
24-
expect(item).toHaveProperty('launch_date_local');
25-
expect(item).toHaveProperty('rocket.rocket_id');
26-
expect(item).toHaveProperty('rocket.rocket_name');
27-
expect(item).toHaveProperty('rocket.rocket_type');
28-
expect(item.rocket.first_stage.cores.length).toBeGreaterThan(0);
29-
item.rocket.first_stage.cores.forEach((core) => {
30-
expect(core).toHaveProperty('core_serial');
31-
expect(core).toHaveProperty('reused');
32-
expect(core).toHaveProperty('land_success');
33-
expect(core).toHaveProperty('landing_type');
34-
expect(core).toHaveProperty('landing_vehicle');
35-
});
36-
expect(item.rocket.second_stage.payloads.length).toBeGreaterThan(0);
37-
if (item.hasOwnProperty.call('cap_serial')) {
38-
item.rocket.second_stage.payloads.forEach((payload) => {
39-
expect(payload).toHaveProperty('payload_id');
40-
expect(payload).toHaveProperty('reused');
41-
expect(payload).toHaveProperty('cap_serial');
42-
expect(payload.customers.length).toBeGreaterThan(0);
43-
expect(payload).toHaveProperty('payload_mass_kg');
44-
expect(payload).toHaveProperty('payload_mass_lbs');
45-
expect(payload).toHaveProperty('orbit');
46-
expect(payload).toHaveProperty('mass_returned_kg');
47-
expect(payload).toHaveProperty('mass_returned_lbs');
48-
expect(payload).toHaveProperty('flight_time_sec');
49-
expect(payload).toHaveProperty('cargo_manifest');
50-
});
51-
} else {
52-
item.rocket.second_stage.payloads.forEach((payload) => {
53-
expect(payload).toHaveProperty('payload_id');
54-
expect(payload).toHaveProperty('reused');
55-
expect(payload.customers.length).toBeGreaterThan(0);
56-
expect(payload).toHaveProperty('payload_mass_kg');
57-
expect(payload).toHaveProperty('payload_mass_lbs');
58-
expect(payload).toHaveProperty('orbit');
59-
});
60-
}
61-
expect(item).toHaveProperty('telemetry.flight_club');
62-
expect(item).toHaveProperty('reuse.core');
63-
expect(item).toHaveProperty('reuse.side_core1');
64-
expect(item).toHaveProperty('reuse.side_core2');
65-
expect(item).toHaveProperty('reuse.fairings');
66-
expect(item).toHaveProperty('reuse.capsule');
67-
expect(item).toHaveProperty('launch_site.site_id');
68-
expect(item).toHaveProperty('launch_site.site_name');
69-
expect(item).toHaveProperty('launch_site.site_name_long');
70-
expect(item).toHaveProperty('launch_success');
71-
expect(item).toHaveProperty('links');
72-
expect(item).toHaveProperty('details');
73-
});
74-
});
75-
});
76-
7712
//------------------------------------------------------------
7813
// Capsule V2
7914
//------------------------------------------------------------
@@ -177,23 +112,3 @@ test('It should return all v2 capsules', () => {
177112
expect(response.statusCode).toBe(200);
178113
});
179114
});
180-
181-
//------------------------------------------------------------
182-
// Latest Launch Test
183-
//------------------------------------------------------------
184-
185-
test('It should return the latest launch', () => {
186-
return request(app).get('/v2/launches/latest').then((response) => {
187-
expect(response.statusCode).toBe(200);
188-
});
189-
});
190-
191-
//------------------------------------------------------------
192-
// 404 Test
193-
//------------------------------------------------------------
194-
195-
test('It should return 404 error', () => {
196-
return request(app).get('/v1').then((response) => {
197-
expect(response.statusCode).toBe(404);
198-
});
199-
});

test/v2-upcoming.test.js

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
2+
const request = require('supertest');
3+
const app = require('../src/app');
4+
5+
beforeAll((done) => {
6+
app.on('ready', () => {
7+
done();
8+
});
9+
});
10+
11+
//------------------------------------------------------------
12+
// Upcoming Launches V2
13+
//------------------------------------------------------------
14+
15+
test('It should return all upcoming launches', () => {
16+
return request(app.listen()).get('/v2/launches/upcoming').then((response) => {
17+
expect(response.statusCode).toBe(200);
18+
response.body.forEach((item) => {
19+
expect(item).toHaveProperty('flight_number', expect.anything());
20+
expect(item).toHaveProperty('launch_year');
21+
expect(item).toHaveProperty('launch_date_unix');
22+
expect(item).toHaveProperty('launch_date_utc');
23+
expect(item).toHaveProperty('launch_date_local');
24+
expect(item).toHaveProperty('rocket.rocket_id');
25+
expect(item).toHaveProperty('rocket.rocket_name');
26+
expect(item).toHaveProperty('rocket.rocket_type');
27+
expect(item.rocket.first_stage.cores.length).toBeGreaterThan(0);
28+
item.rocket.first_stage.cores.forEach((core) => {
29+
expect(core).toHaveProperty('core_serial');
30+
expect(core).toHaveProperty('reused');
31+
expect(core).toHaveProperty('land_success');
32+
expect(core).toHaveProperty('landing_type');
33+
expect(core).toHaveProperty('landing_vehicle');
34+
});
35+
expect(item.rocket.second_stage.payloads.length).toBeGreaterThan(0);
36+
if (item.hasOwnProperty.call('cap_serial')) {
37+
item.rocket.second_stage.payloads.forEach((payload) => {
38+
expect(payload).toHaveProperty('payload_id');
39+
expect(payload).toHaveProperty('reused');
40+
expect(payload).toHaveProperty('cap_serial');
41+
expect(payload.customers.length).toBeGreaterThan(0);
42+
expect(payload).toHaveProperty('payload_mass_kg');
43+
expect(payload).toHaveProperty('payload_mass_lbs');
44+
expect(payload).toHaveProperty('orbit');
45+
expect(payload).toHaveProperty('mass_returned_kg');
46+
expect(payload).toHaveProperty('mass_returned_lbs');
47+
expect(payload).toHaveProperty('flight_time_sec');
48+
expect(payload).toHaveProperty('cargo_manifest');
49+
});
50+
} else {
51+
item.rocket.second_stage.payloads.forEach((payload) => {
52+
expect(payload).toHaveProperty('payload_id');
53+
expect(payload).toHaveProperty('reused');
54+
expect(payload.customers.length).toBeGreaterThan(0);
55+
expect(payload).toHaveProperty('payload_mass_kg');
56+
expect(payload).toHaveProperty('payload_mass_lbs');
57+
expect(payload).toHaveProperty('orbit');
58+
});
59+
}
60+
expect(item).toHaveProperty('telemetry.flight_club');
61+
expect(item).toHaveProperty('reuse.core');
62+
expect(item).toHaveProperty('reuse.side_core1');
63+
expect(item).toHaveProperty('reuse.side_core2');
64+
expect(item).toHaveProperty('reuse.fairings');
65+
expect(item).toHaveProperty('reuse.capsule');
66+
expect(item).toHaveProperty('launch_site.site_id');
67+
expect(item).toHaveProperty('launch_site.site_name');
68+
expect(item).toHaveProperty('launch_site.site_name_long');
69+
expect(item).toHaveProperty('launch_success');
70+
expect(item).toHaveProperty('links');
71+
expect(item).toHaveProperty('details');
72+
});
73+
});
74+
});

0 commit comments

Comments
 (0)