chore: rebuild directory structure

This commit is contained in:
js0ny 2025-11-28 07:53:04 +00:00
parent d3ce236672
commit dbf71443c7
91 changed files with 6683 additions and 1 deletions

View file

@ -0,0 +1,24 @@
meta {
name: [Sematic Error] distanceTo
type: http
seq: 1
}
post {
url: {{API_BASE}}/distanceTo
body: json
auth: inherit
}
body:json {
{ "position1": { "lng": -300.192473, "lat": 550.946233 }, "position2": { "lng": -3202.192473, "lat": 5533.942617 } }
}
assert {
res.status: eq 400
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,24 @@
meta {
name: [Sematic Error] isCloseTo
type: http
seq: 2
}
post {
url: {{API_BASE}}/isCloseTo
body: json
auth: inherit
}
body:json {
{ "position1": { "lng": -3004.192473, "lat": 550.946233 }, "position2": { "lng": -390.192473, "lat": 551.942617 } }
}
assert {
res.status: eq 400
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,24 @@
meta {
name: [Sematic Error] nextPosition
type: http
seq: 3
}
post {
url: {{API_BASE}}/nextPosition
body: json
auth: inherit
}
body:json {
{ "start": { "lng": -3.192473, "lat": 55.946233 }, "angle": 900 }
}
assert {
res.status: eq 400
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,8 @@
meta {
name: CW1 Feedback API
seq: 6
}
auth {
mode: inherit
}

View file

@ -0,0 +1,29 @@
meta {
name: drone 1 details
type: http
seq: 1
}
get {
url: {{API_BASE}}/droneDetails/1
body: none
auth: inherit
}
assert {
res.body.id: eq "1"
res.body.capability.capacity: eq 4.0
res.body.capability.heating: eq true
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,29 @@
meta {
name: drone 10 details
type: http
seq: 2
}
get {
url: {{API_BASE}}/droneDetails/10
body: none
auth: inherit
}
assert {
res.body.id: eq "10"
res.body.capability.capacity: eq 12.0
res.body.capability.heating: eq false
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,23 @@
meta {
name: drone 11 details
type: http
seq: 3
}
get {
url: {{API_BASE}}/droneDetails/11
body: none
auth: inherit
}
tests {
test("Status code is 404", function() {
expect(res.status).to.equal(404);
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,23 @@
meta {
name: drone NaN details
type: http
seq: 4
}
get {
url: {{API_BASE}}/droneDetails/droneNaN
body: none
auth: inherit
}
tests {
test("Status code is 404", function() {
expect(res.status).to.equal(404);
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,8 @@
meta {
name: [GET] droneDetails
seq: 2
}
auth {
mode: inherit
}

View file

@ -0,0 +1,31 @@
meta {
name: dronesWithCooling -> false
type: http
seq: 1
}
get {
url: {{API_BASE}}/dronesWithCooling/false
body: none
auth: inherit
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,24 @@
meta {
name: dronesWithCooling -> illegal
type: http
seq: 1
}
get {
url: {{API_BASE}}/dronesWithCooling/illegal
body: none
auth: inherit
}
tests {
test("Status code is 400", function() {
expect(res.status).to.equal(400);
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,31 @@
meta {
name: dronesWithCooling -> true
type: http
seq: 1
}
get {
url: {{API_BASE}}/dronesWithCooling/true
body: none
auth: inherit
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains String", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in String
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,8 @@
meta {
name: [GET] dronesWithCooling
seq: 1
}
auth {
mode: inherit
}

View file

@ -0,0 +1,16 @@
meta {
name: null should return 200
type: http
seq: 4
}
get {
url: {{API_BASE}}/dronesWithCooling/null
body: none
auth: inherit
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,35 @@
meta {
name: capacity = 4
type: http
seq: 3
}
get {
url: {{API_BASE}}/queryAsPath/capacity/4
body: none
auth: inherit
}
assert {
res.body: length 2
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,35 @@
meta {
name: capacity = 8.0
type: http
seq: 2
}
get {
url: {{API_BASE}}/queryAsPath/capacity/8.0
body: none
auth: inherit
}
assert {
res.body: length 4
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,35 @@
meta {
name: capacity = 8
type: http
seq: 1
}
get {
url: {{API_BASE}}/queryAsPath/capacity/8
body: none
auth: inherit
}
assert {
res.body: length 4
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,35 @@
meta {
name: cooling = false
type: http
seq: 5
}
get {
url: {{API_BASE}}/queryAsPath/cooling/false
body: none
auth: inherit
}
assert {
res.body: length 6
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,8 @@
meta {
name: [GET] queryAsPath
seq: 3
}
auth {
mode: inherit
}

View file

@ -0,0 +1,35 @@
meta {
name: heating = true
type: http
seq: 4
}
get {
url: {{API_BASE}}/queryAsPath/heating/true
body: none
auth: inherit
}
assert {
res.body: length 7
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,27 @@
meta {
name: invalid = null
type: http
seq: 7
}
get {
url: {{API_BASE}}/queryAsPath/invalid/null
body: none
auth: inherit
}
assert {
res.status: eq 200
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,36 @@
meta {
name: maxMoves = 1000
type: http
seq: 6
}
get {
url: {{API_BASE}}/queryAsPath/maxMoves/1000
body: none
auth: inherit
}
assert {
res.body: length 4
res.status : eq 200
}
tests {
test("Status code is 200", function() {
expect(res.status).to.equal(200);
});
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,39 @@
meta {
name: Bypass Bayes Centre
type: http
seq: 10
}
post {
url: {{API_BASE}}/calcDeliveryPathAsGeoJson
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.187543601324762,
"lat":55.94524469728245
}
}
]
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,39 @@
meta {
name: Bypass RestrictedArea
type: http
seq: 9
}
post {
url: {{API_BASE}}/calcDeliveryPathAsGeoJson
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.1878363275002357,
"lat":55.94302147870653
}
}
]
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,39 @@
meta {
name: From Appleton Tower
type: http
seq: 6
}
post {
url: {{API_BASE}}/calcDeliveryPathAsGeoJson
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.186979243145231,
"lat":55.94230336036327
}
}
]
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,39 @@
meta {
name: Simple: Path
type: http
seq: 4
}
post {
url: {{API_BASE}}/calcDeliveryPath
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.17,
"lat": 55.9
}
}
]
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,39 @@
meta {
name: Simple
type: http
seq: 4
}
post {
url: {{API_BASE}}/calcDeliveryPathAsGeoJson
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.17,
"lat": 55.9
}
}
]
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,53 @@
meta {
name: Two Points from two service points
type: http
seq: 8
}
post {
url: {{API_BASE}}/calcDeliveryPathAsGeoJson
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.1878363275002357,
"lat":55.94302147870653
}
},
{
"id": 456,
"date": "2025-12-25",
"time": "11:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.187986659939753,
"lat": 55.97157210129231
}
}
]
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,39 @@
meta {
name: [400] DeliveryPoint in RestrictedArea
type: http
seq: 7
}
post {
url: {{API_BASE}}/calcDeliveryPathAsGeoJson
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.188779987281663,
"lat": 55.943652825016414
}
}
]
}
assert {
res.status: eq 400
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,8 @@
meta {
name: [POST] calcDeliveryPath(AsGeoJson)
seq: 7
}
auth {
mode: inherit
}

View file

@ -0,0 +1,44 @@
meta {
name: GT LT -contradict
type: http
seq: 3
}
post {
url: {{API_BASE}}/query
body: json
auth: inherit
}
body:json {
[
{
"attribute": "capacity",
"operator": ">",
"value": "8"
},
{
"attribute": "capacity",
"operator": "<",
"value": "8"
}
]
}
assert {
res.status: eq 200
res.body: length 0
}
tests {
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,53 @@
meta {
name: GT LT EQ
type: http
seq: 4
}
post {
url: {{API_BASE}}/query
body: json
auth: inherit
}
body:json {
[
{
"attribute": "capacity",
"operator": ">",
"value": "8"
},
{
"attribute": "maxMoves",
"operator": "<",
"value": "2000"
},
{
"attribute": "cooling",
"operator": "=",
"value": "true"
}
]
}
assert {
res.status: eq 200
res.body: length 1
}
tests {
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,48 @@
meta {
name: GT LT
type: http
seq: 2
}
post {
url: {{API_BASE}}/query
body: json
auth: inherit
}
body:json {
[
{
"attribute": "capacity",
"operator": ">",
"value": "8"
},
{
"attribute": "maxMoves",
"operator": "<",
"value": "2000"
}
]
}
assert {
res.status: eq 200
res.body: length 2
}
tests {
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,8 @@
meta {
name: [POST] query
seq: 4
}
auth {
mode: inherit
}

View file

@ -0,0 +1,53 @@
meta {
name: three eqs
type: http
seq: 1
}
post {
url: {{API_BASE}}/query
body: json
auth: inherit
}
body:json {
[
{
"attribute": "capacity",
"operator": "=",
"value": "20"
},
{
"attribute": "heating",
"operator": "=",
"value": "false"
},
{
"attribute": "cooling",
"operator": "=",
"value": "true"
}
]
}
assert {
res.status: eq 200
res.body: length 1
}
tests {
test("Response body is a JSON array", function() {
expect(res.getBody()).to.be.an('array');
});
test("Array is not empty and contains Strings", function() {
const data = res.getBody();
expect(data[0]).to.be.a('string'); // data should be in string
});
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,53 @@
meta {
name: Complex
type: http
seq: 3
}
post {
url: {{API_BASE}}/queryAvailableDrones
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.00,
"lat": 55.121
}
},
{
"id": 456,
"date": "2025-12-25",
"time": "11:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.00,
"lat": 55.121
}
}
]
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,40 @@
meta {
name: Example
type: http
seq: 1
}
post {
url: {{API_BASE}}/queryAvailableDrones
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"cooling": false,
"heating": true,
"maxCost": 13.5
},
"delivery": {
"lng": -3.00,
"lat": 55.121
}
}
]
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,36 @@
meta {
name: Treat Null as False (Cooling)
type: http
seq: 2
}
post {
url: {{API_BASE}}/queryAvailableDrones
body: json
auth: inherit
}
body:json {
[
{
"id": 123,
"date": "2025-12-22",
"time": "14:30",
"requirements": {
"capacity": 0.75,
"heating": true,
"maxCost": 13.5
},
"delivery": null
}
]
}
assert {
res.status: eq 200
}
settings {
encodeUrl: true
timeout: 0
}

View file

@ -0,0 +1,8 @@
meta {
name: [POST] queryAvailableDrones
seq: 5
}
auth {
mode: inherit
}

View file

@ -0,0 +1,9 @@
{
"version": "1",
"name": "ILP CW API Collection",
"type": "collection",
"ignore": [
"node_modules",
".git"
]
}

View file

@ -0,0 +1,4 @@
vars:pre-request {
BASE_URL: http://localhost:8080
API_BASE: {{BASE_URL}}/api/v1
}

File diff suppressed because it is too large Load diff