feat(cli): add support for JUnit reporter (#4189)
This commit is contained in:
@@ -0,0 +1,529 @@
|
||||
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
||||
|
||||
exports[`hopp test [options] <file_path_or_id> > Test\`hopp test <file_path_or_id> --env <file_path_or_id> --reporter-junit [path] > Generates a JUnit report at the default path 1`] = `
|
||||
"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\"?>
|
||||
<testsuites tests=\\"76\\" failures=\\"2\\" errors=\\"66\\" time=\\"time\\">
|
||||
<testsuite name=\\"test-junit-report-export/request-level-errors/invalid-url\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"22\\" failures=\\"0\\" errors=\\"22\\">
|
||||
<system-err><![CDATA[
|
||||
REQUEST_ERROR - TypeError: Invalid URL]]></system-err>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be null\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toInclude should not be null\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be undefined\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toInclude should not be undefined\\"/>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/request-level-errors/test-script-reference-error\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"0\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<system-err><![CDATA[
|
||||
REQUEST_ERROR - TypeError: Invalid URL
|
||||
TEST_SCRIPT_ERROR - Script execution failed: ReferenceError: status is not defined]]></system-err>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"22\\" failures=\\"0\\" errors=\\"22\\">
|
||||
<system-err><![CDATA[
|
||||
PARSING_ERROR - {
|
||||
\\"key\\": \\"<<key>>\\"
|
||||
} (ENV_EXPAND_LOOP)]]></system-err>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be null\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toInclude should not be null\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be undefined\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toInclude should not be undefined\\"/>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/assertions/error\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"22\\" failures=\\"0\\" errors=\\"22\\">
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be null\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toInclude should not be null\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be undefined\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toInclude should not be undefined\\"/>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/assertions/success\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"5\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<testcase name=\\"Status code is 200 - Expected '200' to be '200'\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
<testcase name=\\"Check headers - Expected 'application/json, text/plain, */*,image/webp' to be 'application/json, text/plain, */*,image/webp'\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
<testcase name=\\"Check headers - Expected 'echo.hoppscotch.io' to be 'echo.hoppscotch.io'\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
<testcase name=\\"Check headers - Expected 'undefined' to be 'undefined'\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
<testcase name=\\"Status code is 2xx - Expected '200' to be 200-level status\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/assertions/failure\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"5\\" failures=\\"2\\" errors=\\"0\\">
|
||||
<testcase name=\\"Simulating failure - Status code is 200 - Expected '200' to not be '200'\\" classname=\\"test-junit-report-export/assertions/failure\\">
|
||||
<failure type=\\"AssertionFailure\\" message=\\"Expected '200' to not be '200'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"Simulating failure - Check headers - Expected 'application/json, text/plain, */*,image/webp' to not be 'application/json, text/plain, */*'\\" classname=\\"test-junit-report-export/assertions/failure\\"/>
|
||||
<testcase name=\\"Simulating failure - Check headers - Expected 'echo.hoppscotch.io' to not be 'httpbin.org'\\" classname=\\"test-junit-report-export/assertions/failure\\"/>
|
||||
<testcase name=\\"Simulating failure - Check headers - Expected 'undefined' to not be 'value'\\" classname=\\"test-junit-report-export/assertions/failure\\"/>
|
||||
<testcase name=\\"Simulating failure - Status code is 2xx - Expected '200' to not be 200-level status\\" classname=\\"test-junit-report-export/assertions/failure\\">
|
||||
<failure type=\\"AssertionFailure\\" message=\\"Expected '200' to not be 200-level status\\"/>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
</testsuites>"
|
||||
`;
|
||||
|
||||
exports[`hopp test [options] <file_path_or_id> > Test\`hopp test <file_path_or_id> --env <file_path_or_id> --reporter-junit [path] > Generates a JUnit report at the specified path 1`] = `
|
||||
"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\"?>
|
||||
<testsuites tests=\\"76\\" failures=\\"2\\" errors=\\"66\\" time=\\"time\\">
|
||||
<testsuite name=\\"test-junit-report-export/request-level-errors/invalid-url\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"22\\" failures=\\"0\\" errors=\\"22\\">
|
||||
<system-err><![CDATA[
|
||||
REQUEST_ERROR - TypeError: Invalid URL]]></system-err>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be null\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toInclude should not be null\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be undefined\\" classname=\\"test-junit-report-export/request-level-errors/invalid-url\\">
|
||||
<error message=\\"Argument for toInclude should not be undefined\\"/>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/request-level-errors/test-script-reference-error\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"0\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<system-err><![CDATA[
|
||||
REQUEST_ERROR - TypeError: Invalid URL
|
||||
TEST_SCRIPT_ERROR - Script execution failed: ReferenceError: status is not defined]]></system-err>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"22\\" failures=\\"0\\" errors=\\"22\\">
|
||||
<system-err><![CDATA[
|
||||
PARSING_ERROR - {
|
||||
\\"key\\": \\"<<key>>\\"
|
||||
} (ENV_EXPAND_LOOP)]]></system-err>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be null\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toInclude should not be null\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be undefined\\" classname=\\"test-junit-report-export/request-level-errors/non-existent-env-var\\">
|
||||
<error message=\\"Argument for toInclude should not be undefined\\"/>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/assertions/error\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"22\\" failures=\\"0\\" errors=\\"22\\">
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeLevelxxx()\` error scenarios - Expected 200-level status but could not parse value 'foo'\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected 200-level status but could not parse value 'foo'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toBeType()\` error scenarios - Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toBeType should be "string", "boolean", "number", "object", "undefined", "bigint", "symbol" or "function"\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Expected toHaveLength to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toHaveLength to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toHaveLength()\` error scenarios - Argument for toHaveLength should be a number\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toHaveLength should be a number\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Expected toInclude to be called for an array or string\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Expected toInclude to be called for an array or string\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be null\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toInclude should not be null\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"\`toInclude() error scenarios\` - Argument for toInclude should not be undefined\\" classname=\\"test-junit-report-export/assertions/error\\">
|
||||
<error message=\\"Argument for toInclude should not be undefined\\"/>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/assertions/success\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"5\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<testcase name=\\"Status code is 200 - Expected '200' to be '200'\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
<testcase name=\\"Check headers - Expected 'application/json, text/plain, */*,image/webp' to be 'application/json, text/plain, */*,image/webp'\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
<testcase name=\\"Check headers - Expected 'echo.hoppscotch.io' to be 'echo.hoppscotch.io'\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
<testcase name=\\"Check headers - Expected 'undefined' to be 'undefined'\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
<testcase name=\\"Status code is 2xx - Expected '200' to be 200-level status\\" classname=\\"test-junit-report-export/assertions/success\\"/>
|
||||
</testsuite>
|
||||
<testsuite name=\\"test-junit-report-export/assertions/failure\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"5\\" failures=\\"2\\" errors=\\"0\\">
|
||||
<testcase name=\\"Simulating failure - Status code is 200 - Expected '200' to not be '200'\\" classname=\\"test-junit-report-export/assertions/failure\\">
|
||||
<failure type=\\"AssertionFailure\\" message=\\"Expected '200' to not be '200'\\"/>
|
||||
</testcase>
|
||||
<testcase name=\\"Simulating failure - Check headers - Expected 'application/json, text/plain, */*,image/webp' to not be 'application/json, text/plain, */*'\\" classname=\\"test-junit-report-export/assertions/failure\\"/>
|
||||
<testcase name=\\"Simulating failure - Check headers - Expected 'echo.hoppscotch.io' to not be 'httpbin.org'\\" classname=\\"test-junit-report-export/assertions/failure\\"/>
|
||||
<testcase name=\\"Simulating failure - Check headers - Expected 'undefined' to not be 'value'\\" classname=\\"test-junit-report-export/assertions/failure\\"/>
|
||||
<testcase name=\\"Simulating failure - Status code is 2xx - Expected '200' to not be 200-level status\\" classname=\\"test-junit-report-export/assertions/failure\\">
|
||||
<failure type=\\"AssertionFailure\\" message=\\"Expected '200' to not be 200-level status\\"/>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
</testsuites>"
|
||||
`;
|
||||
|
||||
exports[`hopp test [options] <file_path_or_id> > Test\`hopp test <file_path_or_id> --env <file_path_or_id> --reporter-junit [path] > Generates a JUnit report for a collection referring to environment variables 1`] = `
|
||||
"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\"?>
|
||||
<testsuites tests=\\"12\\" failures=\\"0\\" errors=\\"0\\" time=\\"time\\">
|
||||
<testsuite name=\\"Test environment variables in request body/test-request\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"12\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<testcase name=\\"Status code is 200 - Expected '200' to be '200'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments recursively - Expected 'Hello' to be 'Hello'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments recursively - Expected 'Hello' to be 'Hello'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments recursively - Expected 'Hello' to be 'Hello'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments referenced in the request body - Expected 'Hello' to be 'Hello'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments referenced in the request body - Expected 'Hello' to be 'Hello'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments referenced in the request body - Expected 'Hello' to be 'Hello'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments referenced in the request body - Expected '7' to be '7'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments referenced in the request body - Expected 'John' to be 'John'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments referenced in the request body - Expected 'Doe' to be 'Doe'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments referenced in the request body - Expected 'John Doe' to be 'John Doe'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
<testcase name=\\"Successfully resolves environments referenced in the request body - Expected 'Hello, John Doe' to be 'Hello, John Doe'\\" classname=\\"Test environment variables in request body/test-request\\"/>
|
||||
</testsuite>
|
||||
</testsuites>"
|
||||
`;
|
||||
|
||||
exports[`hopp test [options] <file_path_or_id> > Test\`hopp test <file_path_or_id> --env <file_path_or_id> --reporter-junit [path] > Generates a JUnit report for a collection with authorization/headers set at the collection level 1`] = `
|
||||
"<?xml version=\\"1.0\\" encoding=\\"UTF-8\\"?>
|
||||
<testsuites tests=\\"12\\" failures=\\"0\\" errors=\\"0\\" time=\\"time\\">
|
||||
<testsuite name=\\"CollectionB/RequestA\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"2\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<testcase name=\\"Correctly inherits auth and headers from the root collection - Expected 'Set at root collection' to be 'Set at root collection'\\" classname=\\"CollectionB/RequestA\\"/>
|
||||
<testcase name=\\"Correctly inherits auth and headers from the root collection - Expected 'Bearer BearerToken' to be 'Bearer BearerToken'\\" classname=\\"CollectionB/RequestA\\"/>
|
||||
</testsuite>
|
||||
<testsuite name=\\"CollectionB/FolderA/RequestB\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"2\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<testcase name=\\"Correctly inherits auth and headers from the parent folder - Expected 'Set at root collection' to be 'Set at root collection'\\" classname=\\"CollectionB/FolderA/RequestB\\"/>
|
||||
<testcase name=\\"Correctly inherits auth and headers from the parent folder - Expected 'Bearer BearerToken' to be 'Bearer BearerToken'\\" classname=\\"CollectionB/FolderA/RequestB\\"/>
|
||||
</testsuite>
|
||||
<testsuite name=\\"CollectionA/RequestA\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"2\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<testcase name=\\"Correctly inherits auth and headers from the root collection - Expected 'Set at root collection' to be 'Set at root collection'\\" classname=\\"CollectionA/RequestA\\"/>
|
||||
<testcase name=\\"Correctly inherits auth and headers from the root collection - Expected 'Bearer BearerToken' to be 'Bearer BearerToken'\\" classname=\\"CollectionA/RequestA\\"/>
|
||||
</testsuite>
|
||||
<testsuite name=\\"CollectionA/FolderA/RequestB\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"2\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<testcase name=\\"Correctly inherits auth and headers from the parent folder - Expected 'Set at root collection' to be 'Set at root collection'\\" classname=\\"CollectionA/FolderA/RequestB\\"/>
|
||||
<testcase name=\\"Correctly inherits auth and headers from the parent folder - Expected 'Bearer BearerToken' to be 'Bearer BearerToken'\\" classname=\\"CollectionA/FolderA/RequestB\\"/>
|
||||
</testsuite>
|
||||
<testsuite name=\\"CollectionA/FolderA/FolderB/RequestC\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"2\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<testcase name=\\"Correctly inherits auth and headers from the parent folder - Expected 'Overriden at FolderB' to be 'Overriden at FolderB'\\" classname=\\"CollectionA/FolderA/FolderB/RequestC\\"/>
|
||||
<testcase name=\\"Correctly inherits auth and headers from the parent folder - Expected 'test-key' to be 'test-key'\\" classname=\\"CollectionA/FolderA/FolderB/RequestC\\"/>
|
||||
</testsuite>
|
||||
<testsuite name=\\"CollectionA/FolderA/FolderB/FolderC/RequestD\\" time=\\"time\\" timestamp=\\"timestamp\\" tests=\\"2\\" failures=\\"0\\" errors=\\"0\\">
|
||||
<testcase name=\\"Overrides auth and headers set at the parent folder - Expected 'Overriden at RequestD' to be 'Overriden at RequestD'\\" classname=\\"CollectionA/FolderA/FolderB/FolderC/RequestD\\"/>
|
||||
<testcase name=\\"Overrides auth and headers set at the parent folder - Expected 'Basic dXNlcm5hbWU6cGFzc3dvcmQ=' to be 'Basic dXNlcm5hbWU6cGFzc3dvcmQ='\\" classname=\\"CollectionA/FolderA/FolderB/FolderC/RequestD\\"/>
|
||||
</testsuite>
|
||||
</testsuites>"
|
||||
`;
|
||||
@@ -1,5 +1,7 @@
|
||||
import { ExecException } from "child_process";
|
||||
import { describe, expect, test } from "vitest";
|
||||
import { afterAll, beforeAll, describe, expect, test } from "vitest";
|
||||
import fs from "fs";
|
||||
import path from "path";
|
||||
|
||||
import { HoppErrorCode } from "../../../types/errors";
|
||||
import { getErrorCode, getTestJsonFilePath, runCLI } from "../../utils";
|
||||
@@ -229,7 +231,7 @@ describe("hopp test [options] <file_path_or_id>", () => {
|
||||
expect(error).toBeNull();
|
||||
});
|
||||
|
||||
test("Works with shorth `-e` flag", async () => {
|
||||
test("Works with short `-e` flag", async () => {
|
||||
const TESTS_PATH = getTestJsonFilePath(
|
||||
"env-flag-tests-coll.json",
|
||||
"collection"
|
||||
@@ -506,4 +508,163 @@ describe("hopp test [options] <file_path_or_id>", () => {
|
||||
expect(error).toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
describe("Test`hopp test <file_path_or_id> --env <file_path_or_id> --reporter-junit [path]", () => {
|
||||
const genPath = path.resolve("hopp-cli-test");
|
||||
|
||||
// Helper function to replace dynamic values before generating test snapshots
|
||||
// Currently scoped to JUnit report generation
|
||||
const replaceDynamicValuesInStr = (input: string): string =>
|
||||
input.replace(
|
||||
/(time|timestamp)="[^"]+"/g,
|
||||
(_, attr) => `${attr}="${attr}"`
|
||||
);
|
||||
|
||||
beforeAll(() => {
|
||||
fs.mkdirSync(genPath);
|
||||
});
|
||||
|
||||
afterAll(() => {
|
||||
fs.rmdirSync(genPath, { recursive: true });
|
||||
});
|
||||
|
||||
test("Report export fails with the code `REPORT_EXPORT_FAILED` while encountering an error during path creation", async () => {
|
||||
const exportPath = "hopp-junit-report.xml";
|
||||
|
||||
const COLL_PATH = getTestJsonFilePath("passes-coll.json", "collection");
|
||||
|
||||
const args = `test ${COLL_PATH} --reporter-junit /non-existent-path/report.xml`;
|
||||
|
||||
const { stdout, stderr } = await runCLI(args, {
|
||||
cwd: path.resolve("hopp-cli-test"),
|
||||
});
|
||||
|
||||
const out = getErrorCode(stderr);
|
||||
expect(out).toBe<HoppErrorCode>("REPORT_EXPORT_FAILED");
|
||||
|
||||
expect(stdout).not.toContain(
|
||||
`Successfully exported the JUnit report to: ${exportPath}`
|
||||
);
|
||||
});
|
||||
|
||||
test("Generates a JUnit report at the default path", async () => {
|
||||
const exportPath = "hopp-junit-report.xml";
|
||||
|
||||
const COLL_PATH = getTestJsonFilePath(
|
||||
"test-junit-report-export-coll.json",
|
||||
"collection"
|
||||
);
|
||||
|
||||
const args = `test ${COLL_PATH} --reporter-junit`;
|
||||
|
||||
const { stdout } = await runCLI(args, {
|
||||
cwd: path.resolve("hopp-cli-test"),
|
||||
});
|
||||
|
||||
expect(stdout).not.toContain(
|
||||
`Overwriting the pre-existing path: ${exportPath}`
|
||||
);
|
||||
|
||||
expect(stdout).toContain(
|
||||
`Successfully exported the JUnit report to: ${exportPath}`
|
||||
);
|
||||
|
||||
const fileContents = fs
|
||||
.readFileSync(path.resolve(genPath, exportPath))
|
||||
.toString();
|
||||
|
||||
expect(replaceDynamicValuesInStr(fileContents)).toMatchSnapshot();
|
||||
});
|
||||
|
||||
test("Generates a JUnit report at the specified path", async () => {
|
||||
const exportPath = "outer-dir/inner-dir/report.xml";
|
||||
|
||||
const COLL_PATH = getTestJsonFilePath(
|
||||
"test-junit-report-export-coll.json",
|
||||
"collection"
|
||||
);
|
||||
|
||||
const args = `test ${COLL_PATH} --reporter-junit ${exportPath}`;
|
||||
|
||||
const { stdout } = await runCLI(args, {
|
||||
cwd: path.resolve("hopp-cli-test"),
|
||||
});
|
||||
|
||||
expect(stdout).not.toContain(
|
||||
`Overwriting the pre-existing path: ${exportPath}`
|
||||
);
|
||||
|
||||
expect(stdout).toContain(
|
||||
`Successfully exported the JUnit report to: ${exportPath}`
|
||||
);
|
||||
|
||||
const fileContents = fs
|
||||
.readFileSync(path.resolve(genPath, exportPath))
|
||||
.toString();
|
||||
|
||||
expect(replaceDynamicValuesInStr(fileContents)).toMatchSnapshot();
|
||||
});
|
||||
|
||||
test("Generates a JUnit report for a collection with authorization/headers set at the collection level", async () => {
|
||||
const exportPath = "hopp-junit-report.xml";
|
||||
|
||||
const COLL_PATH = getTestJsonFilePath(
|
||||
"collection-level-auth-headers-coll.json",
|
||||
"collection"
|
||||
);
|
||||
|
||||
const args = `test ${COLL_PATH} --reporter-junit`;
|
||||
|
||||
const { stdout } = await runCLI(args, {
|
||||
cwd: path.resolve("hopp-cli-test"),
|
||||
});
|
||||
|
||||
expect(stdout).toContain(
|
||||
`Overwriting the pre-existing path: ${exportPath}`
|
||||
);
|
||||
|
||||
expect(stdout).toContain(
|
||||
`Successfully exported the JUnit report to: ${exportPath}`
|
||||
);
|
||||
|
||||
const fileContents = fs
|
||||
.readFileSync(path.resolve(genPath, exportPath))
|
||||
.toString();
|
||||
|
||||
expect(replaceDynamicValuesInStr(fileContents)).toMatchSnapshot();
|
||||
});
|
||||
|
||||
test("Generates a JUnit report for a collection referring to environment variables", async () => {
|
||||
const exportPath = "hopp-junit-report.xml";
|
||||
|
||||
const COLL_PATH = getTestJsonFilePath(
|
||||
"req-body-env-vars-coll.json",
|
||||
"collection"
|
||||
);
|
||||
const ENV_PATH = getTestJsonFilePath(
|
||||
"req-body-env-vars-envs.json",
|
||||
"environment"
|
||||
);
|
||||
|
||||
const args = `test ${COLL_PATH} --env ${ENV_PATH} --reporter-junit`;
|
||||
|
||||
const { stdout } = await runCLI(args, {
|
||||
cwd: path.resolve("hopp-cli-test"),
|
||||
});
|
||||
|
||||
expect(stdout).toContain(
|
||||
`Overwriting the pre-existing path: ${exportPath}`
|
||||
);
|
||||
|
||||
expect(stdout).toContain(
|
||||
`Successfully exported the JUnit report to: ${exportPath}`
|
||||
);
|
||||
|
||||
const fileContents = fs
|
||||
.readFileSync(path.resolve(genPath, exportPath))
|
||||
.toString();
|
||||
|
||||
expect(replaceDynamicValuesInStr(fileContents)).toMatchSnapshot();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -0,0 +1,150 @@
|
||||
{
|
||||
"v": 2,
|
||||
"name": "test-junit-report-export",
|
||||
"folders": [
|
||||
{
|
||||
"v": 2,
|
||||
"name": "assertions",
|
||||
"folders": [],
|
||||
"requests": [
|
||||
{
|
||||
"v": "5",
|
||||
"auth": {
|
||||
"authType": "inherit",
|
||||
"authActive": true
|
||||
},
|
||||
"body": {
|
||||
"body": null,
|
||||
"contentType": null
|
||||
},
|
||||
"name": "error",
|
||||
"method": "GET",
|
||||
"params": [],
|
||||
"headers": [],
|
||||
"endpoint": "https://echo.hoppscotch.io",
|
||||
"testScript": "pw.test(\"`toBeLevelxxx()` error scenarios\", ()=> {\n pw.expect(\"foo\").toBeLevel2xx();\n pw.expect(\"foo\").not.toBeLevel2xx();\n});\n\npw.test(\"`toBeType()` error scenarios\", () => {\n pw.expect(2).toBeType(\"foo\")\n pw.expect(\"2\").toBeType(\"bar\")\n pw.expect(true).toBeType(\"baz\")\n pw.expect({}).toBeType(\"qux\")\n pw.expect(undefined).toBeType(\"quux\")\n \n pw.expect(2).not.toBeType(\"foo\")\n pw.expect(\"2\").not.toBeType(\"bar\")\n pw.expect(true).not.toBeType(\"baz\")\n pw.expect({}).not.toBeType(\"qux\")\n pw.expect(undefined).not.toBeType(\"quux\")\n})\n\npw.test(\"`toHaveLength()` error scenarios\", () => {\n pw.expect(5).toHaveLength(0)\n pw.expect(true).toHaveLength(0)\n\n pw.expect(5).not.toHaveLength(0)\n pw.expect(true).not.toHaveLength(0)\n\n pw.expect([1, 2, 3, 4]).toHaveLength(\"a\")\n\n pw.expect([1, 2, 3, 4]).not.toHaveLength(\"a\")\n})\n\npw.test(\"`toInclude() error scenarios`\", () => {\n pw.expect(5).not.toInclude(0)\n pw.expect(true).not.toInclude(0)\n\n pw.expect([1, 2, 3, 4]).not.toInclude(null)\n\n pw.expect([1, 2, 3, 4]).not.toInclude(undefined)\n})",
|
||||
"preRequestScript": "",
|
||||
"requestVariables": []
|
||||
},
|
||||
{
|
||||
"v": "5",
|
||||
"auth": {
|
||||
"authType": "inherit",
|
||||
"authActive": true
|
||||
},
|
||||
"body": {
|
||||
"body": null,
|
||||
"contentType": null
|
||||
},
|
||||
"name": "success",
|
||||
"method": "GET",
|
||||
"params": [],
|
||||
"headers": [],
|
||||
"endpoint": "https://echo.hoppscotch.io",
|
||||
"testScript": "\n\n// Check status code is 200\npw.test(\"Status code is 200\", ()=> {\n pw.expect(pw.response.status).toBe(200);\n});\n\n// Check headers\npw.test(\"Check headers\", ()=> {\n pw.expect(pw.response.body.headers[\"accept\"]).toBe(\"application/json, text/plain, */*,image/webp\");\n pw.expect(pw.response.body.headers[\"host\"]).toBe(\"echo.hoppscotch.io\")\n pw.expect(pw.response.body.headers[\"custom-header\"]).toBe(undefined)\n});\n\n// Check status code is 2xx\npw.test(\"Status code is 2xx\", ()=> {\n pw.expect(pw.response.status).toBeLevel2xx();\n});",
|
||||
"preRequestScript": "",
|
||||
"requestVariables": []
|
||||
},
|
||||
{
|
||||
"v": "5",
|
||||
"auth": {
|
||||
"authType": "inherit",
|
||||
"authActive": true
|
||||
},
|
||||
"body": {
|
||||
"body": null,
|
||||
"contentType": null
|
||||
},
|
||||
"name": "failure",
|
||||
"method": "GET",
|
||||
"params": [],
|
||||
"headers": [],
|
||||
"endpoint": "https://echo.hoppscotch.io",
|
||||
"testScript": "\n\n// Check status code is 200\npw.test(\"Simulating failure - Status code is 200\", ()=> {\n pw.expect(pw.response.status).not.toBe(200);\n});\n\n// Check JSON response property\npw.test(\"Simulating failure - Check headers\", ()=> {\n pw.expect(pw.response.body.headers[\"accept\"]).not.toBe(\"application/json, text/plain, */*\");\n pw.expect(pw.response.body.headers[\"host\"]).not.toBe(\"httpbin.org\")\n pw.expect(pw.response.body.headers[\"custom-header\"]).not.toBe(\"value\")\n});\n\n// Check status code is 2xx\npw.test(\"Simulating failure - Status code is 2xx\", ()=> {\n pw.expect(pw.response.status).not.toBeLevel2xx();\n});",
|
||||
"preRequestScript": "",
|
||||
"requestVariables": []
|
||||
}
|
||||
],
|
||||
"auth": {
|
||||
"authType": "inherit",
|
||||
"authActive": true
|
||||
},
|
||||
"headers": []
|
||||
},
|
||||
{
|
||||
"v": 2,
|
||||
"name": "request-level-errors",
|
||||
"folders": [],
|
||||
"requests": [
|
||||
{
|
||||
"v": "5",
|
||||
"auth": {
|
||||
"authType": "inherit",
|
||||
"authActive": true
|
||||
},
|
||||
"body": {
|
||||
"body": null,
|
||||
"contentType": null
|
||||
},
|
||||
"name": "invalid-url",
|
||||
"method": "GET",
|
||||
"params": [],
|
||||
"headers": [],
|
||||
"endpoint": "invalid-url",
|
||||
"testScript": "pw.test(\"`toBeLevelxxx()` error scenarios\", ()=> {\n pw.expect(\"foo\").toBeLevel2xx();\n pw.expect(\"foo\").not.toBeLevel2xx();\n});\n\npw.test(\"`toBeType()` error scenarios\", () => {\n pw.expect(2).toBeType(\"foo\")\n pw.expect(\"2\").toBeType(\"bar\")\n pw.expect(true).toBeType(\"baz\")\n pw.expect({}).toBeType(\"qux\")\n pw.expect(undefined).toBeType(\"quux\")\n \n pw.expect(2).not.toBeType(\"foo\")\n pw.expect(\"2\").not.toBeType(\"bar\")\n pw.expect(true).not.toBeType(\"baz\")\n pw.expect({}).not.toBeType(\"qux\")\n pw.expect(undefined).not.toBeType(\"quux\")\n})\n\npw.test(\"`toHaveLength()` error scenarios\", () => {\n pw.expect(5).toHaveLength(0)\n pw.expect(true).toHaveLength(0)\n\n pw.expect(5).not.toHaveLength(0)\n pw.expect(true).not.toHaveLength(0)\n\n pw.expect([1, 2, 3, 4]).toHaveLength(\"a\")\n\n pw.expect([1, 2, 3, 4]).not.toHaveLength(\"a\")\n})\n\npw.test(\"`toInclude() error scenarios`\", () => {\n pw.expect(5).not.toInclude(0)\n pw.expect(true).not.toInclude(0)\n\n pw.expect([1, 2, 3, 4]).not.toInclude(null)\n\n pw.expect([1, 2, 3, 4]).not.toInclude(undefined)\n})",
|
||||
"preRequestScript": "",
|
||||
"requestVariables": []
|
||||
},
|
||||
{
|
||||
"v": "5",
|
||||
"auth": {
|
||||
"authType": "inherit",
|
||||
"authActive": true
|
||||
},
|
||||
"body": {
|
||||
"body": null,
|
||||
"contentType": null
|
||||
},
|
||||
"name": "test-script-reference-error",
|
||||
"method": "GET",
|
||||
"params": [],
|
||||
"headers": [],
|
||||
"endpoint": "invalid-url",
|
||||
"testScript": "pw.test(\"Reference error\", () => {\n pw.expect(status).toBe(200);\n})",
|
||||
"preRequestScript": "",
|
||||
"requestVariables": []
|
||||
},
|
||||
{
|
||||
"v": "5",
|
||||
"auth": {
|
||||
"authType": "inherit",
|
||||
"authActive": true
|
||||
},
|
||||
"body": {
|
||||
"body": "{\n \"key\": \"<<key>>\"\n}",
|
||||
"contentType": "application/json"
|
||||
},
|
||||
"name": "non-existent-env-var",
|
||||
"method": "POST",
|
||||
"params": [],
|
||||
"headers": [],
|
||||
"endpoint": "https://echo.hoppscotch.io",
|
||||
"testScript": "pw.test(\"`toBeLevelxxx()` error scenarios\", ()=> {\n pw.expect(\"foo\").toBeLevel2xx();\n pw.expect(\"foo\").not.toBeLevel2xx();\n});\n\npw.test(\"`toBeType()` error scenarios\", () => {\n pw.expect(2).toBeType(\"foo\")\n pw.expect(\"2\").toBeType(\"bar\")\n pw.expect(true).toBeType(\"baz\")\n pw.expect({}).toBeType(\"qux\")\n pw.expect(undefined).toBeType(\"quux\")\n \n pw.expect(2).not.toBeType(\"foo\")\n pw.expect(\"2\").not.toBeType(\"bar\")\n pw.expect(true).not.toBeType(\"baz\")\n pw.expect({}).not.toBeType(\"qux\")\n pw.expect(undefined).not.toBeType(\"quux\")\n})\n\npw.test(\"`toHaveLength()` error scenarios\", () => {\n pw.expect(5).toHaveLength(0)\n pw.expect(true).toHaveLength(0)\n\n pw.expect(5).not.toHaveLength(0)\n pw.expect(true).not.toHaveLength(0)\n\n pw.expect([1, 2, 3, 4]).toHaveLength(\"a\")\n\n pw.expect([1, 2, 3, 4]).not.toHaveLength(\"a\")\n})\n\npw.test(\"`toInclude() error scenarios`\", () => {\n pw.expect(5).not.toInclude(0)\n pw.expect(true).not.toInclude(0)\n\n pw.expect([1, 2, 3, 4]).not.toInclude(null)\n\n pw.expect([1, 2, 3, 4]).not.toInclude(undefined)\n})",
|
||||
"preRequestScript": "",
|
||||
"requestVariables": []
|
||||
}
|
||||
],
|
||||
"auth": {
|
||||
"authType": "inherit",
|
||||
"authActive": true
|
||||
},
|
||||
"headers": []
|
||||
}
|
||||
],
|
||||
"requests": [],
|
||||
"auth": {
|
||||
"authType": "inherit",
|
||||
"authActive": true
|
||||
},
|
||||
"headers": []
|
||||
}
|
||||
Reference in New Issue
Block a user