fix: safe mode validations (#2912)

This commit is contained in:
lohit
2024-08-24 14:29:43 +05:30
committed by GitHub
parent 4fbd2f0bdb
commit 4bdbfb5c0c
7 changed files with 115 additions and 11 deletions

View File

@@ -13,7 +13,9 @@ post {
body:json {
{
"boolean": false,
"number": 1,
"number_1": 1,
"number_2": 0,
"number_3": -1,
"string": "bruno",
"array": [1, 2, 3, 4, 5],
"object": {
@@ -24,25 +26,38 @@ body:json {
}
vars:pre-request {
number: 1
boolean: false
undefined: undefined
null: null
string: foo
number_1: 1
number_2: 0
number_3: -1
}
assert {
req.body.boolean: isBoolean false
req.body.number: isNumber 1
req.body.number_1: isNumber 1
req.body.undefined: isUndefined undefined
req.body.string: isString bruno
req.body.null: isNull null
req.body.array: isArray
req.body.boolean: eq false
req.body.number: eq 1
req.body.number_1: eq 1
req.body.undefined: eq undefined
req.body.string: eq bruno
req.body.null: eq null
req.body.number_2: eq 0
req.body.number_3: eq -1
req.body.number_2: isNumber
req.body.number_3: isNumber
boolean: eq false
undefined: eq undefined
null: eq null
string: eq foo
number_1: eq 1
number_2: eq 0
number_3: eq -1
}
tests {
@@ -51,7 +66,9 @@ tests {
});
test("number pre var", function() {
expect(bru.getRequestVar('number')).to.eql(1);
expect(bru.getRequestVar('number_1')).to.eql(1);
expect(bru.getRequestVar('number_2')).to.eql(0);
expect(bru.getRequestVar('number_3')).to.eql(-1);
});
test("null pre var", function() {

View File

@@ -0,0 +1,39 @@
meta {
name: vars asserts
type: http
seq: 5
}
post {
url: {{host}}/api/echo/json
body: json
auth: none
}
body:json {
{
"boolean": false,
"number": 1,
"string": "bruno",
"array": [1, 2, 3, 4, 5],
"object": {
"hello": "bruno"
},
"null": null
}
}
vars:pre-request {
vars_asserts__request_var: vars_asserts__request_var__value
}
assert {
vars_asserts__request_var: eq vars_asserts__request_var__value
vars_asserts__runtime_var: eq vars_asserts__runtime_var__value
vars_asserts__env_var: eq vars_asserts__env_var__value
}
script:pre-request {
bru.setVar('vars_asserts__runtime_var', 'vars_asserts__runtime_var__value');
bru.setEnvVar('vars_asserts__env_var', 'vars_asserts__env_var__value');
}

View File

@@ -0,0 +1,37 @@
meta {
name: invalid and valid module imports
type: http
seq: 3
}
get {
url: {{host}}/ping
body: none
auth: none
}
assert {
invalid_module_error_thrown: eq true
valid_module_no_error: eq true
}
script:pre-request {
try {
bru.setVar('invalid_module_error_thrown', false);
// should throw an error
const invalid = require("./lib/invalid");
}
catch(error) {
bru.setVar('invalid_module_error_thrown', true);
}
try {
bru.setVar('valid_module_no_error', true);
// should not throw an error
const math = require("./lib/math");
}
catch(error) {
bru.setVar('valid_module_no_error', false);
}
}