|
|
@ -6,20 +6,20 @@ function validateMonitorChecks(res, checks, bean) { |
|
|
|
const responseText = typeof data === "string" ? res.data : JSON.stringify(res.data); |
|
|
|
let checkObj; |
|
|
|
|
|
|
|
this.checks.forEach(check => { |
|
|
|
(this.checks || []).forEach(check => { |
|
|
|
switch (check.type) { |
|
|
|
case "HTTP_STATUS_CODE_SHOULD_EQUAL": |
|
|
|
if (checkStatusCode(res.status, check.value)) { |
|
|
|
bean.msg += `, status matches '${check.value}'` |
|
|
|
bean.msg += `, status matches '${check.value}'`; |
|
|
|
bean.status = UP; |
|
|
|
} else { |
|
|
|
throw new Error(bean.msg + ", but status code dit not match " + check.value) |
|
|
|
throw new Error(bean.msg + ", but status code dit not match " + check.value); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
|
case "RESPONSE_SHOULD_CONTAIN_TEXT": |
|
|
|
if (responseText.includes(check.value)) { |
|
|
|
bean.msg += `, response contains '${check.value}'` |
|
|
|
bean.msg += `, response contains '${check.value}'`; |
|
|
|
bean.status = UP; |
|
|
|
} else { |
|
|
|
throw new Error(bean.msg + ", but response does not contain '" + check.value + "'"); |
|
|
@ -28,7 +28,7 @@ function validateMonitorChecks(res, checks, bean) { |
|
|
|
|
|
|
|
case "RESPONSE_SHOULD_NOT_CONTAIN_TEXT": |
|
|
|
if (!responseText.includes(check.value)) { |
|
|
|
bean.msg += `, response does not contain '${check.value}'` |
|
|
|
bean.msg += `, response does not contain '${check.value}'`; |
|
|
|
bean.status = UP; |
|
|
|
} else { |
|
|
|
throw new Error(bean.msg + ", but response does contain '" + check.value + "'"); |
|
|
@ -37,7 +37,7 @@ function validateMonitorChecks(res, checks, bean) { |
|
|
|
|
|
|
|
case "RESPONSE_SHOULD_MATCH_REGEX": |
|
|
|
if (responseText.test(new RegExp(check.value))) { |
|
|
|
bean.msg += `, regex '${check.value}' matches` |
|
|
|
bean.msg += `, regex '${check.value}' matches`; |
|
|
|
bean.status = UP; |
|
|
|
} else { |
|
|
|
throw new Error(bean.msg + ", but response does not match regex: '" + check.value + "'"); |
|
|
@ -46,7 +46,7 @@ function validateMonitorChecks(res, checks, bean) { |
|
|
|
|
|
|
|
case "RESPONSE_SHOULD_NOT_MATCH_REGEX": |
|
|
|
if (!responseText.test(new RegExp(check.value))) { |
|
|
|
bean.msg += `, regex '${check.value}' does not matches` |
|
|
|
bean.msg += `, regex '${check.value}' does not matches`; |
|
|
|
bean.status = UP; |
|
|
|
} else { |
|
|
|
throw new Error(bean.msg + ", but response does match regex: '" + check.value + "'"); |
|
|
@ -56,7 +56,7 @@ function validateMonitorChecks(res, checks, bean) { |
|
|
|
case "RESPONSE_SELECTOR_SHOULD_EQUAL": |
|
|
|
checkObj = JSON.parse(check.value); |
|
|
|
if (get(res, checkObj.selector) === checkObj.value) { |
|
|
|
bean.msg += `, response selector equals '${checkObj.value}'` |
|
|
|
bean.msg += `, response selector equals '${checkObj.value}'`; |
|
|
|
bean.status = UP; |
|
|
|
} else { |
|
|
|
throw new Error(`${bean.msg}, but response selector '${checkObj.selector}' does not equal '${checkObj.value}'`); |
|
|
@ -66,7 +66,7 @@ function validateMonitorChecks(res, checks, bean) { |
|
|
|
case "RESPONSE_SELECTOR_SHOULD_NOT_EQUAL": |
|
|
|
checkObj = JSON.parse(check.value); |
|
|
|
if (get(res, checkObj.selector) !== checkObj.value) { |
|
|
|
bean.msg += `, response selector does not equal '${checkObj.value}'` |
|
|
|
bean.msg += `, response selector does not equal '${checkObj.value}'`; |
|
|
|
bean.status = UP; |
|
|
|
} else { |
|
|
|
throw new Error(`${bean.msg}, but response selector '${checkObj.selector}' does equal '${checkObj.value}'`); |
|
|
@ -76,7 +76,7 @@ function validateMonitorChecks(res, checks, bean) { |
|
|
|
case "RESPONSE_SELECTOR_SHOULD_MATCH_REGEX": |
|
|
|
checkObj = JSON.parse(check.value); |
|
|
|
if (get(res, checkObj.selector).test(new RegExp(checkObj.value))) { |
|
|
|
bean.msg += `, response selector matches regex '${checkObj.value}'` |
|
|
|
bean.msg += `, response selector matches regex '${checkObj.value}'`; |
|
|
|
bean.status = UP; |
|
|
|
} else { |
|
|
|
throw new Error(`${bean.msg}, but response selector '${checkObj.selector}' does not match regex '${checkObj.value}'`); |
|
|
@ -86,7 +86,7 @@ function validateMonitorChecks(res, checks, bean) { |
|
|
|
case "RESPONSE_SELECTOR_SHOULD_NOT_MATCH_REGEX": |
|
|
|
checkObj = JSON.parse(check.value); |
|
|
|
if (!get(res, checkObj.selector).test(new RegExp(checkObj.value))) { |
|
|
|
bean.msg += `, response selector does not match regex '${checkObj.value}'` |
|
|
|
bean.msg += `, response selector does not match regex '${checkObj.value}'`; |
|
|
|
bean.status = UP; |
|
|
|
} else { |
|
|
|
throw new Error(`${bean.msg}, but response selector '${checkObj.selector}' does match regex '${checkObj.value}'`); |
|
|
|